Padrino::Mounter searches apps in gems now

If Padrino is loaded using rubygems, this patch enables Padrino::Mounter to load apps from gems. To
allow the reloader what it does, this only searches for the app file, but does not load the
application. Applications in gems are expected to be found in `gem-folder/app/app.rb`. Gems named
after `ApplicationConstant.underscore` will be found. Optionally, they can be prefixed with
`padrino-`.
Allow application names to be nested in a module

This allows application objects nested one level into a Module to be autodetected. If a module
contain more than one app, the behaviour is undefined.
Generator for a spare padrino gem

This generator generates a spare Padrino application that works both as a standalone application and
as a mountable Gem in other probjects.
Fix static string in generator template
Merge remote-tracking branch 'origin/master' into apps-in-gems
Make the gem name a settable option
Remove magic to find one app in a module

This change expects that all app names are given in full. No magic detection of apps in modules -
this has too many implicit assumptions, like there only being one app in a module.
Detect spec by given gem name

Also, make all require_paths potential app locations. While this strictly includes 'lib', this means
that multiple apps can be packaged in a gem in a sane way.
Remove `gem` command, replace it by an option

This allows the project generator to generate a gemspec fitting the project add some files to assist
in gem development.
Make a better guess on where the app might be in a gem

This avoids accidentally finding the wrong app that comes earlier in the require-path.
Remove last traces of the `gem` command
Implement access author name and email for gemspec
Add tests for generated gems, fix a found bug
Add some explaining text to the gem readme
Add Padrino::Module to orchestrate loading

This adds a Padrino::Module module that orchestrates loading of gems.

Padrino::Module implements the most important methods to properly load code from a gem
(#dependency_paths and #root) and adds a method `gem!` to flag a module as being loaded from a gem.

It also modifies the generators so that now, everything works out of the box.
Merge remote-tracking branch 'origin/master' into apps-in-gems
Track modules independent of gems and care less about gems
Merge remote-tracking branch 'origin/master' into apps-in-gems
Replace json codec with agnostic multi_json #1026
Add optional json codecs to generated Gemfile