Refactor into namespaces
Add composer.json
Make PSR-friendly