Many utility methods added and some minor code reorganization.
Added GUIElement.destroy(), which tells a GUIElement to release its
resources. GUIContext calls it when the element dies or when
GUIContext.destroy() is called.
Adjusted ScrollableFrame so it can destroy and reinitialize its
subcontext to free resources.