Add unit tests, restructure build output

This adds a bit of different structure to the repo, and QUnit for testing.

In theory this shouldn't break anything because there's still a `js/barekit.min.js` file being generated.