Start adding code to allow devise_for to specify the engine context (router_name) to be used.
Make after_sign_out_path_for and after_inactive_sign_up_path_for aware of router name if declared in devise_for declaration.
Fix bug in the tests
Get the logic in the right order and fix variable naming (and run the tests)
Add find_mapping! method to return the router_name instead of overloading find_scope!
make the find_mapping! method return a mapping object
Don't couple the routing object to the whole system.. pass around the RoutingDetails object instead.

NOTE: RoutingDetails is supposed to be a simple data transfer object.
Add description around the new method.
Extract routing context to its own file.
Make sure I include the new class into the gem
Use 2.1 instead of 2.1.0
travis-ci/travis-ci#2220
split send_reset_password_instructions into two parts for better hooking
rename method + remove extra db call
Merge pull request #3013 from aditya-kapoor/split-send_reset_password_instructions

Split send_reset_password_instructions for better hooking
Simplify access to router_name using the existing scope lookup.
Stash as test have broken
get everything working with the engine included and devise routes declared within it.
Start adding tests to the engine routing tests.
Add full tests around confirmation when using devise_for with router_name
Clean up the code.