Added a lot of documentation, only thing left is Screens