added initial implementation of deposit functions
added initial deposit code