Added documentation and cleaned up namespace.