feat(build): use browserify

Switch from plain files concatenation to browserify.
See: http://browserify.org/

- add gulp-browserify to dependencies
- move legacy files to ./source/legacy
- move new files to ./source, remove prefixes (e.g. "10_...")
- wrap new files with "module.exports = ..." CommonJS wrapper
- update "scripts" gulp task
- add index-top.litcoffee and index-frames.litcoffee files

Also for tests:

Use karma-browserify.
See: https://github.com/xdissent/karma-browserify

- add karma-browserify to dependencies
- move tests to ./test/unit, remove ".test." suffix
- add unit/index.litcoffee file to force test order
- wrap test files with "module.exports = ..." CommonJS wrapper
- update "test" gulp task
- move browserify config used in both karma config and gulpfile
to ./build/browserify-config.litcoffee
- update "clean-build" task: do not remove ./build/ itself