Implements circle, untested.