added a crapload of description and interfaces

I added some descriptive comments to almost all properties, interfaces
and classes.
Added the "doc" folder and some initial documentation about GUID and
Gates