Usability Improvements

- Switched from clicks to commands on many of the menu items. This
cleans up some of the code, allows disabling of the items when they
don't make sense, and support for the "back" button on a mouse.
- Added double-click support for links
- Added backspace support for going backwards through the data.
- Added shift support when highlighting data
- moved App.xaml.cs back into pokemon mode.
Add scripting support

IronRuby scripting is now possible with the app. As the multibox area
was starting to get large, it's been factored out to it's own file.
There's a problem with the commands, so a small hack was added to deal
with that for now: there is likely a way to route the commands from the
window to the user control that I don't know yet.
Edit Directory Structure

Breaking the Assembly in half. Moving all Gba related files to a
separate assembly, not referenced by the first. This helps organize the
functionality and supports the claim that this can be more than just a
Gba editor.
Add plugin code

- The split assemblies can now communicate with eachother using the MEF
plugin system.

- the Multi-Box close button works now
- The app is now aware of multiple parsers for displaying the data, and
allows the user to select between them.
- The plugins/scripting dlls are now copied to a subdirectory so the
output folder doesn't get too wide.
- The plugins are built first so building the main app can copy the dlls
correctly.
Fix the command bindings

Figured out a single line I could add that allows the UserControl to
contain the CommandBindings while still letting the window own the
commands.