Namespaces and general updates.
Updates to follow PSR standards.