reorganize, fix tests, & make gh-pages deploy work