Cleanup build process (including dockerizing)

The more I dig into these classes to do different stuff the more it yells that these tools (phpcs, phpunit etc) are meant to be run command line with these classes woefully undocumented. The versioning that they put out is most likely not for the api of these classes but for the api of the command and in order to have code like this not break in minor versions and such I think its best we use the command instead. It also leads to smaller build files. It also easier to pass the output through. Since these commands are installed via composer which we run at the top, there are no extra steps if using the command form. @nubs @chadicus