Rewritten scope functionality should work with all the various corner cases

In the process, made changes to accomodate upcoming Cement 2.1 framework, 2.1.4-dev is now a dependency (hopefully temporarily).  There are a lot of commands to test, its entirely possible I missed some conditions...