Improvements to `PGN` class.

* Class in now immutable
* Overrode `Object` methods to make comparisons work
* Fixed check(s) for invalid PGNs
Made PGN selector in demo app work.
Fixed crash when receiving invalid messages
Added overviews and usages examples

Put individual READMEs for libISOBlue and the demo app.