[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'm not sure I understand why this is necessary. It looks like you're re-implementing `OperatorSubscribeOn` functionality? What makes this different from saying `o.lift(new OnSubscribeAddAccount(..)).subscribeOn(handlerThreadScheduler)`?