Rewritten the DrawView based on code from Eric Burke at The Corner

(Yields much better performance)