Select*KeyFragment rewrites

- moved all specific Public/Secret logic from the Adapter class into
  inner subclasses in the Fragments
- more versatile status display ("revoked", "expired", "can certify"...)
- applied view holder pattern
- query logic, including subqueries, moved into provider classes

Closes #375
Merge pull request #550 from Valodim/select-fragment

Select*KeyFragment rewrites
use view holder pattern in KeyListFragment

Closes #551
remove drawer layout remnants from import key dialogue
display correct primary user id in import dialogue MOSTLY

This is an incomplete fix; due to use of machine readable output, there
is no way to know the primary user id for keys fetched from a key
server.

Pending https://bitbucket.org/skskeyserver/sks-keyserver/issue/28/primary-uid-in-machine-readable-index
fix EditKeyActivity
get rid of more getMasterKeyId usage, work on getKeyRingsAsArmoredString
split getMasterKeyId for the remaining use cases

Closes #549
Merge pull request #553 from Valodim/split-masterKeyId

Split master key & partial fix for uid order
Prettify more layouts
Prettify view_key_userids_item
Remove queries from PgpKeyHelper, introduce encrypt to signer mode (not tested)
Refactor ProviderHelper to be non-static using a constructor based on context (first commit to get context out of pgp classes)
More cleanup in providerHelper
PgpSignEncrypt: get by master key id
PgpSignEncrypt: merge generateSignature() into main method
PgpSignEncrypt is now context-free
put signatureType where it belongs
PgpDecryptVerify is now context-free
Simplify and fix delete key dialog