Change colour for Jabber ID in prompt to notify of encryption status.

This patch updates the colour of the Jabber ID displayed in the prompt
to be green if it is believed that the conversation with the most recent
contact conversed with is in an encrypted state, white if the state is
unknown, and red if the conversation is known to be unencrypted.

If we're going to be including the `lastTarget` JID within the prompt
string, and because `lastTarget` is likely to be useful in several
places throughout the codebase (i.e. such as when an `otr.NewKeys` or
`otr.ConversationEnded` event is processed) for updating the prompt
string, it's cleaner if `lastTarget` is a field within the `ui.Session`
type.

Additionally, the `ui.Session` is now passed as a parameter to
`input.Input.ProcessCommands`, in order to facilitate detecting the
encryption status while typing a message to a contact.

 * ADD `lastTarget` field to `ui.Session` type.
 * ADD new method, `input.Input.SetPromptForTarget`, which updates the
   prompt to display the Jabber ID of the contact we're currently
   speaking to in green if the conversation is encrypted, white if the
   encryption state is currently unknown, and red if it is unencrypted.
 * CHANGE `input.Input.ProcessCommands` to take the `ui.Session` as a
   parameter, and update all calls to this method to pass that parameter
   in.
 * CHANGE the prompt colour when a new message is being typed, or when
   an `otr.NewKeys` or `otr.ConversationEnded` event is processed.
 * FIXES Issue #58:
   https://github.com/agl/xmpp-client/issues/58
Detect the OTR state of the conversation when messaging a contact.

This allows us to more accurately update the colour of the contact's JID
within the prompt string; green if the conversation is currently
encrypted, red otherwise.
Use channels to synchronise prompt updating.

This keeps the input system isoloated from the Session and avoids a race
on Session.conversations, which should only be accessed from the main
goroutine.

Also, update the prompt when ending an OTR session with /otr-end.
Merge branch 'status-prompt-colour'