Allow selection of the appropriate target context for ghci invocation.

The target executable can be given via `-t` or `--target`, e.g.

    cabal-dev ghci -t tests

Additionally, if no target is specified, `cabal-dev ghci` will
prefer to use the library target if configured.
Merge remote-tracking branch 'freels/select_ghci_target'

Conflicts:
	src/Distribution/Dev/Ghci.hs