trackPageView method signatures for optional context and timestamp

- For #48  #49
Null checks when inserting context map

- Added missing override as well
Fix proper conversion of map to string when encoding
Add trackStructuredEvent with extra method signatures
Add trackUnstructuredEvent with extra method signatures
Fix $schema -> schema
Motherload of fixes and implementations

- Added remaining tracker implmentations with extra method signatures
- TrackerTest added
- Added TransactionItem method signature for optional context
- Fixes #49, Fixes #48, Fixes #45