This diff introduces sending of the newNotifyTokenRequired to the client in Get stream request.
When the device has an invalid or expired notification token it's empty in the database and we are requesting a new token from the client using the newNotifyTokenRequired response.
The client gets back with the new token in Get stream request when starts listening for new messages (getting messages) from the Tunnelbroker (ref to D5206).
This is a part of the stack.
This approach was used keeping in mind the transition to the bidirectional stream soon.
We could probably go back to using isPinned property here. The thing we undid in D8097. This would make the code more readable, but it's up to you