Still moving things around to find the best class structure