added support for circle rectangle intersection. Refactor to make overlap test code outside of instances.