more docblocks and documentation