Add the ToxFriend class as a data container
Correct JavaDoc errors and refactor validPointers
Fix another piece of JavaDoc
API rebuild

Change several major points of the API Design:

1) We now have a friends class, and we are keeping a global Map that maps tox instances to their list of active friends. All calls on these friends are synchronized with the same Lock also used on the Tox instance which the
friends belong too, to ensure serial access and not mix up reads/writes.

2) Separate the validPointers Map into 2 Maps and 1 List. The maps contain the mappings between the pointers and friends/locks, while the list is the ultimate authority on which pointers are valid, and which pointers aren't.

3) Several minor Bugfixes for things which could possibly result in non-initialized variables
Add "Here be dragons" notice to ToxFriend class, and add a GPL header
Update the way Callbacks work

Callbacks now inherit from a shared abstract ToxCallback class that carries a JTox instance. Assigning a JTox instance is mandatory, as the field is final and uninitialized by default.
Reflect changes to bootstrapping in our API.

In addition to that, we now have a function that conveniently creates a byte array out of a string for us. This should only be used for messages. For things like IP-Addresses and Tox-IDs,
we can continue to use Strings, as they consist of only ASCII characters, which are encoded correctly even in Java's internal UTF-8 mechanisms. The byte array should be used solely for
purposes where there might be unicode that needs to be transmitted.
Work around Java's modified UTF-8

All strings that may contain UTF-8 characters now use byte arrays instead of Strings. Utility methods for the conversion are supplied.
Undo ToxFriend API

This was a bad idea. Clients should handle this on their own, so they can implement their own logic on Friends without being restricted by this API
Implement byte arrays for callbacks

Same reason as with the rest, we need to handle byte arrays instead of strings so they can be handled correctly by the API.
Add a default implementation for a Tox Worker class
Merge branch 'api-rewrite'