added some more methods and documentation