sphinx documentation enhancement proposal

Hi,

I did some changes to the documentation which I find nicer, like having a file per module. I've used `annotations` as a playground and fixed some sphinx layout there. I dunno if three is any consensus on how it should be done, I've just tried something and an now looking forward to see if it's a good direction or not.

* fixing the warning in the documentation generation
* moving the modules into proper files, it seems nicer
* adapting annotations' and upgrader's doc to be sphinx friendly