Move all unit tests to their modules and remove briar-tests
There are now tests in these modules:
* bramble-api
* bramble-core
* bramble-j2se
* briar-core
* briar-android
In order to run all -core tests together, the following AS run configuration can be used:

Closes#778
See merge request !456
Add sharing information to private group ActionBar subtitle

Closes#646
See merge request !455
Add creator and online information to group member list


Closes#813
See merge request !448
Add sharing info to ForumActivity action bar subtitle
This indirectly does also most of the work for adding the same information to private groups. However, completing this is blocked by !448.

Second part of #646
See merge request !451
Add blog sharing information to toolbar subtitle
This MR introduces a new `SharingController` which is supposed to be used in activities that show blogs, groups and forums. Feedback on this approach is welcome before this is used to add "Shared with" support to other parts of the UI.
The toolbar subtitle shows information about how many contacts the current shareable is shared with and how many of those are online.
So far this is implemented for blogs:

One part of #646
See merge request !447
Fix Sharing Status screens
* Remove distinction between "shared with" and "shared by"
* Show all contacts a blog is shared with
* Show online status of contacts in sharing screen

Closes#810
See merge request !445
Introduce Dialog Theme for Onboarding
Currently onboarding dialogs and confirmation dialogs look the same. This MR introduces a new dialog theme for onboarding dialogs that looks like the tap target onboarding, so that the user can immediately spot the purpose of the dialog.

See merge request !446
* Remove distinction between "shared with" and "shared by"
* Show all contacts a blog is shared with
* Show online status of contacts in sharing screen
Require a label for hashing
* Add a string label argument to `CryptoComponent#hash()`
* Convert `DoubleDigest` from implementing `MessageDigest`
to implementing `org.spongycastle.crypto.Digest`
(we need to keep `DoubleDigest` for `FortunaGenerator`)
* Convert all other uses of `MessageDigest` to `CryptoComponent#hash()`
* Remove `CryptoComponent#getMessageDigest()`, `MessageDigest` and `DigestWrapper`
Closes#548
See merge request !442
Ensure key agreement tasks finish if they ignore interrupts
The problem here was that `BluetoothSocket#connect()` was throwing an IOException when the task was interrupted - the task treated this like any other connection failure and retried, so the task never finished.
The fix is to check whether the timeout has expired before retrying, so the task eventually finishes even if it ignores the original interrupt.
Closes#283
See merge request !443
* Add a string label argument to CryptoComponent#hash()
* Convert DoubleDigest from implementing MessageDigest
to implementing org.spongycastle.crypto.Digest
(we need to keep DoubleDigest for FortunaGenerator)
* Convert all other uses of MessageDigest to CryptoComponent#hash()
* Remove CryptoComponent#getMessageDigest(), MessageDigest and DigestWrapper