Optional AMD modules

Bit messy since jQuery is still global, but future work will include
smaller deps (promise & ajax).