Make the ViewModels strongly typed

I also had to add a reference to Espera.Network because of some wierd WPF bug that prevented successful compilation
Use the NetworkHelper class to validate the port
We can get the library file path through the AppInfo class
Removed unused usings
Let the playlist viewmodel know about the library
Move moving and removing playlist items into the PlaylistViewModel
Fixed the playlist name validation
Lol Resharper fucked that one up
Fixed up the command bindings
Merge pull request #131 from flagbug/mvvm-refactorings

Some more refactorings