Added a red-black tree implementation.  Also, starting to work on the optimization of showing a view a second time.  It is unnecessary to fully render a view after it has already been rendered.  This is especially obvious when transitioning between views.