Depend on latest unstable binding_of_caller
Remove the rails binstub
We depend on binding_of_caller, so it's always gonna be available
Shout-out to Charlie for the Exception code
Touch up engine.rb for better readability

De-inline some funky ternary operators, name an initializer a bit
better, etc.
Reformat the code to follow most of the Rails code