added documentation to most of the methods.