Rewrote Rectangle2D and implemented.

Rectangle2D is now a replacement for the block structure. Also
reformated all functions that required moding due to Rectangle2D change.