Code cleanup

- But all the stuff into a namespace
- Adjust comment header
Add client facade