Initial commit with composer.json and namespaces added.

Also split into one file per class.