Completed post conditions and refactored some of the use cases