Include events with no parameters in generated code.
Re-generated with param-less notifications included.
Generate properties instead of fields so we can use ShouldBeEquivilentTo() more easily.
Re-generate code with properties instead of fields.
Add FluentAssertions library for easier quality checking.
Fix up deserialising of event types.

These types are now code-gen'd, but the types stored in KnownTypes are
the generic args; and not the actual types.
Fix analysis test to use FluentAssertion's structural comparison.
Removed commented code.
Added some TODOs.