Add a heartbeat method to the py.Stream class (more below)

There are a number of ways to implement this, but this is the most
similar to how the rest of the library works. The best approach would
be to return messages from the server along with messages generated
in the library to give the user as much information as possible.