clean up code; add CGRectCopy macro