Move root + initialization up to `App`

Currently the root detection and intialization code lives in Pliny and
uses a relative path trick to determine where the app's root is. As
Pliny will have to soon be extrated into gem form, this method will stop
working.

This pull moves root detection up to the `App` itself, and also pulls
initialization there as well. This has a nice side effect of making the
initialization code more transparent and more customizable.
Merge pull request #36 from 12-oz/brandur-app-root

Move root + initialization up to `App`