Refactor location, filename, and klabel attributes

**please review**
The reason I've been using ArrayList instead of linked lists, is because it is way way waaaay easier to debug in the IDE. The speed benefit from this change is no way near the benefit of being able to quickly spot the term that you want in the lookup window. I would appreciate it if you would choose something similar.