#11 Moved all the heavily redundant test setup code to a top-level describe block again.

This time we've ensured that only mocked dependencies that are absolutely required across all of the drag / drop tests are
set up in the top level describe block. Before, there were all sorts of dependencies that were stubbed, restubbed, overwritten
and dependent on the class implementation. Now we have cleaner subsets of drag / drop tests