Modularise MPD.Internal

New layout:
- MPD.ConnMgr
- MPD.Exception
- MPD.Handle
- MPD.Interact
- MPD.Remote
- MPD.Simple
- MPD.Wire
Remove the connection manager

The justification is:
1. Too much code for too little functionality.
   All the relevant functionality (re-connects, persistence, etc)
   can be achieved by other means; most of which can be tacked on
   by the client if needed.
2. The current implementation is wrong, because it allows concurrent
   commands to the same handle, which results in errors.
   This could be fixed by switching to MVars, but it is not worth doing
   so.