more documentation and removing namespace std from headers