Display library documentation

Some comments about this change:

* I've moved some methods and properties around, basically putting the setter next to the corresponding getter accessors. The reason is that the [Guidelines for Dart Doc Comments](https://www.dartlang.org/articles/doc-comment-guidelines/#variables-getters-and-setters) state that if there is both a getter and setter, we should comment only the getter. So I think it is a good idea, while the setter does not have documentation that it is at least close to the getter having the documentation.
* I've tried to avoid lines longer than 80 characters.
* I've included quite a few TODOs to indicate comments that I'm not so sure about or where I didn't have any idea what comment to put there. You should have a closer look at those.
* I don't quite understand how the transformation matrix works, so I couldn't put reasonable comments on those methods.
Masks in StageXL work differently than they do in Flash. A Mask is not a DisplayObject and you can't add it to the display list. A Mask is applied relative to the DisplayObject where it is applied to or the parent DisplayObject. You can set the Mask.relativeToParent property which defaults to false.