Better client side circular dependency handling

This pull-request brings together a few improvements to our client-side circular dependency handling:

  1. 'browser-modules' has been modified so that it is less likely to throw circular-dependency errors with otherwise valid CommonJs code.
  2. The `requireAll()` method no longer keeps adding to the global package definition since this is all set up once at the start of the bundle anyway.
  3. The `requireAll()` method no longer has a `globalObj` parameter, since this parameter was no longer used anyway.