add SignFileActivity for signing incoming files with default key

There wasn't any way to sign files yet, this is based on the approach of
EncryptFileActivity and just provides a very simple interface to the
signing procedure.
prompt to sign/encrypt when receiving non-PGP file

A file:// URI was already routed to encryptFile(), this adds a rough
prompt to choose Sign or Encrypt for any non-PGP file received via file://
or content://

refs #1646
use IOUtils.copy() for simpler, more reliable stream copying

It is really silly to have to implement this kind of thing again and again,
luckily Apache Commons IOUtils has done it for us.
disable suggestions in file path in file dialog fragment
FileHandlerActivity: add ActionBar back button in case of crashes

Sometimes, something isn't handled quite right and FileHandlerActivity
stays open instead of just disappearing. This provides an ActionBar back
button to give the user some place to go when this happens.
DecryptActivity: add ActionBar back button in case of crashes

Sometimes, something isn't handled quite right and DecryptActivity
stays open instead of just disappearing. This provides an ActionBar back
button to give the user some place to go when this happens.
set titles of Share screen based on action: encrypt, sign, debug log
EncryptFileActivity: use Dialog to show error msgs, like other ops

The other operations have a showError() method for popping up an OK dialog
with an error message.  Yes, this is very Windows 3.1, but it works well
enough for now.
EncryptFileActivity: fix crash after selecting the key to encrypt to

Because of the way that the other Activity calls onActivityResult(), it is
not possible to launch an Activity in that method.  My guess is that
onActivityResult() is called in the thread of the returning Activity. To
fix this, we use a Messenger to send a message to the GPG thread to launch
the rest of the encryption process.
REMOVE ME enable debug logs