Namespaced everything since this is intended to be a library.