Pass arguments to compgen correctly (fix #33).

Pass a double dash to compgen to ensure its argument is not treated as an
option.
Fix typos in README.md.
Add failing test for #50.
Add test for ddash with switch.
Search for options and arguments separately.
Refactor parser search.

Now the command line argument being matched is parsed only once, and the
search for the matching parser is specialised to regular options/flags
and arguments/subparsers.
Remove monadic argument parsers.
Introduce ArgPolicy.
Remove Builder.Arguments module.
Update README.

Explain argument parsing policy and the special treatment of --.
Bump version to 0.7.0.
Refactor argument parsing (fix #50).

This also removes all the ad-hoc argument builders with many variations, as the
argument parsing policy is now handled at a lower level.
Add noIntersperse preference (fix #22).
Re-export ReadM and related functions.
Update CHANGELOG.
Update cabal description.

Use the new modifier API in the cabal description, i.e. replace `&` with
`<>`.
Bump version to 0.7.0.1.
Escape angle brackets in cabal description.
Move intersperse option to ParserInfo.
Bump version to 0.8.