Add cache adapter interface
Refactor code to use namespaces
Add library bootstrapper