Call `heartbeat_check` in `ConsumerMixin`

This also adjusts the docs to be a little less specific about the rate
argument and a little more specific about how often the function should
be called.
Improve example in consumer user guide.  Closes #298
Merge branch 'djmitche/call-heartbeat'