Add documentation and move internal to Internal namespace
Minor lint fix
Move schema to internal