[WIP] Add serializer interface

Targets #161.
At this time, I'll think I'll open my own PR.