Add bang/boolean methods to Figaro.env

The plain methods will now return nil (just like ENV). The bang method
will raise an error if the key is not found. The boolean method will
return true or false for whether the key exists.
Make Figaro::Env respond to proxy method appropriately
Change Figaro.env to a convenience method for Figaro::ENV
User double rather than mock
Refactor Figaro configuration loading into an application class
Allow the Figaro application path and environment to be changed
Restructure Rails-specific hooks
Extract Rails-specific behavior out of Figaro::Application