More functionality implmented. Not worked out rotation properly