Major optimization and cleanup...

Improved the UI a bit, cached the width/height/column/row instead of
calculating it each call, and added/commented a ton of methods.