Improved circle code, rectangle() convenience function, and rainbow demo