Enforce use of the Safe subset of Haskell for GHC >= 702

Mainly to ensure good style.
MPD.Handle (open): return protocol version along with conn handle

The protocol version is currently hidden from the top-level
module, but is accessible by using MPD.Handle.open directly.
Merge branches 'safe-haskell' and 'protocol-version'

Conflicts:
	src/MPD/Interact.hs