Added Drag and drop support to move F# project items within the same project

Added Drag and drop support to move F# project items within the same project.  Dragging non project items and dragging out of project results in default base behaviour.  
- - -
This should address #135 for the most part.  I don't know whether adding an Up/Down entry to the context menu would help make this more visible.  Im sure somebody could add this at a later date, dragging entry's seems a lot more intuitive.  

The method of moving the project files uses Linq2Xml to find and move nodes around in the project file.  Ideally we should be using `IdeApp.ProjectOperations` and remove a project file, and then insert it as a certain point, but the current implementation of the MSBuild handler is not position aware and simply updates the moved item in its original location.  In addition, Inserting a project item at a certain index simply adds it to the end of the items list.  This solution allows us to avoid the complexity and numerous edge cases that I found while investigating this.

Added more Linq2Xml helpers to TooltipHelpers to facilitate drag and drop, also refactored so they are in their own module.