Introduced onHeartbeat($consumer) method for consistent activity logging during the stream consumption

In case of very busy streams "ticks" are not being sent (at least not every 30 seconds only when stream is getting less busy) so to guarantee consistent status logging onHeartbeat method has been introduced which is called every ~30 seconds.