As AeroGear.js gets larger and more complex, it makes sense to revisit our build strategy
as well as our dependency management strategy since that affects the build.
I was thinking, and after discussing with Luke I believe he agrees, that we should
investigate the use of AMD (Asynchronous Module Definition). What this provides for us
is:
Better modularization between the pieces of code in AeroGear.js
Better dependency management by specifically defining those dependencies in each module
A better base for our custom build process
I think all of those reasons point to the need for this implementation. That being said,
it doesn't come without a cost. We would need to reorganize the repo and modify each
file to make it a proper AMD module. This will take time but I think it is time well
spent.
I would be glad to hear if anyone has any thoughts or concerns around this.