added Circle & Polygon collision masks, minor refactoring