Added initial code and documentation