added some documentation.