RequireJS: Implement AMD

Refactored the existing JavaScript and Jasmine tests to use Asynchronous
Module Definitions (AMD) with RequireJS
RequireJS: Implement AMD

Refactored some of the package names and file structure