[questions] First attempt at adding Account Observable

This is a rough draft, produced from code, I have been using for a while already.

Note, that unlike most other operators in the library `OnSubscribeAddAccount` is left public to allow people to better adjust it for various needs - the code is already too sophisticated and does too much to try and stuff everything in bunch of static methods.

Before finishing this, I would like to know answers to following questions:

1) How do I test it? Robolectric 2.3 does not have proper shadow for AccountManager, so should I just write my own? By the way, are there plans to update to Robolectric 2.4, perhaps by employing [SDK manager plugin](https://github.com/JakeWharton/sdk-manager-plugin) to fetch dependencies? I am aware of [#1369](https://github.com/robolectric/robolectric/issues/1369), but at current rate it is not going resolve itself.
2) What are project guidelines (ok, what _should_ those be) regarding use of annotations? Complex AccountManager methods need `@Nullable` annotation rather badly, but which one to choose? Android ones? IntelliJ ones (used so far, because they are easiest to get). Perhaps, something more complex (Checker Framework)?
> I prefer to handle exceptional situations when possible instead of throwing.

Here you're masking a potential problem. Devs wouldn't even know something was going wrong with their account implementation.

> What's the point of writing the library class, that does not account for different possibilities?

I was simply saying that if this *only* is meant to access accounts created by the app then we could be more strict about accounts not violating contract. If it's meant to access accounts made by other apps - ones that *do* violate contract - then we'd have to be more lenient because there's nothing a developer can do to fix it.