documentation
add boilerplate graphics base module and refactor stuff