[Issue 179] [WIP] adds UML
[Issue 179] [WIP] modifies code to match code conventions