Merge existing fixes and some new performance enhancements

I have gathered up other people's fixes I found on GitHub and made a few improvements like:

* supporting egg distributions

* Removed a check for a null json_dumps that can never be null.

* Only wrap the callback if there is something to be done to the callback.

* Remove support for returning lists.
  Due to security problems in browsers, it is not advisable to return
  lists as the top level item in a JSON response to a GET request.

  Removing the default support for it, so in scenarios where it would be
  supportable (POST for example), it is better to be explicit about what
  is happening.  See
  http://haacked.com/archive/2009/06/24/json-hijacking.aspx for details
  on the problem.

* Small cleanups for pep8 and pep257

I bumped the version number in the setup to 0.2.1.2, and if you accept this pull request, it would be great if you could push an update to PyPI.