Move Exceptions into a namespace
Add some documentation to base headers