WIP. Refactoring the build process (Still broken). Refactored dependencies to start support unit testing by using karma (browser).