Use RequireJS for generating distribution builds

This completely changes the project so it actually builds things
using RequireJS.

Almond is no longer required to be loaded above jQuery, as a shim
has been added that will load jQuery.  The final output is wrapped
in a closure, so Almond will not trick other plugins on the page
into thinking that AMD is being used.

There are now four builds that are automatically generated:
  * Basic (select2.js) - The basic build for Select2 which includes
      Almond.JS and the jQuery shim.  This only includes the bare
      amount that is required to run Select2 in any page.
  * Full (select2.full.js) - A full build which is packed with
      jQuery, Select2, and Almond.JS.  This also includes all of
      the modules provided by Select2, including all of the
      translations.
  * AMD (select2.amd.js) - A light build that does not include
      Almond.JS or jQuery.  This should be used in applications
      which already use AMD and use their own loaders.  jQuery is
      expected to be loaded and registered as an AMD module.
  * Full AMD (select2.amd.js) - All of the qualities of the AMD
      build, but also includes the additional modules including all
      of the translations.  This is also used in the tests.

All of the Select2 modules are now defined as anonymous modules
and given ids based on the file names.  In the future, this will
allow us to quickly and easily generate builds that only include
specific modules and their dependencies.

Eventually, a page in the documentation will contain all of the
information involving these builds.  Most people will be using
the basic build.

**Note:** The compiled CoffeeScript modules are now ignored
through the `.gitignore` as they are not actually required except
for when builds are being generated.