Multiple changes: Multithreading, one click load, remembers path, cleanup

- Uses Bass/Rhythm/Lead path to select a sensible track on song change
- Can open disk song list from steam folder
- Minor Style cleanup
- Bugfixes, but they might be because I use .Net 4.0

I don't have .Net 4.5 as I haven't touched C# in a couple of years so I've also made a few changes on a Net4.0 branch which I keep rebasing onto master.

I can split into separate pull requests if you only want some of the changes.

![screenshot-p138](https://cloud.githubusercontent.com/assets/1028741/2837651/9fc4a072-d01e-11e3-8c3d-1aaa87b8e975.png)