Javadoc generated and fully documented for every part of the project except network, which is work in progress