Refactoring to move forms

Basically a WIP commit before taking a break, but I'd like some feedback at this point.

This is probably about halfway done, see the commit message for details.

In terms of updating namespaces i get the sense that I might be re-inventing the wheel and/or duplicating existing functionality.

Is there an example test I can look at in regards to handling user input?  Specifically how do I write a test that gets past the prompts to the user (e.g find-file and the y-or-n-p to answer if we want to refer the names or prefix them)?

#25