Cleaned up code. I still can't find a stable way to maintain selection after highlight.