moved Circle to its own file