small refactors.
refactor classes into more logical packages.
Add tests for random tile placement.