Context-aware pcomplete rules.

Provide completions based on information retrieved with 'ledger-context-at-point'.
To support step-by-step completion of transactions some more patterns were added
to 'ledger-line-config'. The actual completion rules mostly reuse some of the
convenient input commands that are buried in ledger-mode. Using the standard
pcomplete termination string (" ") to allow a "context switch" at the end of each
completion step.
Plugging ledger pcomplete into completion-at-point.

Added documentation on how to use pcomplete transparently via completion-at-point.
Fix for pcomplete Metadata rule.
Merge pull request #227 from 4ourbit/patch-2

More context-aware ledger pcomplete rules.

Thanks.
Add `ledger-read-date' - Read date & default to today.
`ledger-insert-effective-date': use `ledger-read-date'.

Running `ledger-insert-effective-date' will now prompt for a date with
a pre-filled value of the `(ledger-year-and-month)' ("2014/01/"). Just
pressing RET without inserting the 'day'-portion will insert the date
of today.
ledger-reconcile: Add option to insert an effective date when clearing transactions.
`ledger-read-date': Use `ledger-minibuffer-history'.
Use `ledger-read-date' where applicable.
Merge pull request #228 from the-kenny/emacs-prompt-effective-date

Emacs: Improve effictive-date-handling