Working version....

Still needs edits. Colour and images (if possible). Simplified into one
class.