added documentation to properties and methods