- Finalising and cleanup
 - Changed some method names
 - Add documentation