Moved protocol trace logging to stderr
* Instead of 'blockForever', get the next packet with a timeout and throw if exceeded (don't use
  'orThrow', since that cancels the collector).
* When skipping continue packets, don't ignore non-OA packets (allows for incremented ID, empty
  reply packets for some commands)
Added HarmonyHubListener framework for notifying of activity state changes
Use time since (approximately) JVM start for timestamps; include timestamps in button press messages
Reference deviceIds as integers rather than strings
Better handling/error checking around start activity by name/id
Updated version to 1.0.3; Added support for publishing all artifacts to Maven repo
Added TODO
Removed FIXME
Fix an issue with message timeouts when retrieving the current activity during a start activity operation