General cleanup; Added more documentation;