Extracted Move Folder from Folder Controller

Untested due to lack of working .mdf file.
Found and addressed multiple potential bugs:
- could create an infinite loop when looking up the tree, if any of the
destinationFolders parent folders was a child of itself, root is never
found.
- Folder could be placed inside of itself allowing tight infinite loop.