Extract specifics of the observer implementation into policies.
Tweak the templates a bit to be a bit more automation friendly.
Add a very simplistic Makefile while I'm figuring out CMake.
Move threading model to storage_policy.