Feature/serialiser

I've been looking at refactoring spoor with a view to changing the serialisation algorithm to BSON (or maybe gzip...) in the future
can someone who is familiar with the current version review my changes?
All the serialisation/deserailisation of the model now occurs in the serialiser object whereas the event subscribion and tracking is in the module.