Element methods for listings

* Changed the parseListing function over to element (createElement, appendChild) methods from string (innerHTML) methods to solve various problems (ex: event listeners getting destroyed).
* Created a new function for generating a list of thumbnails.
* Made the clean up for user entered tags more thorough.
* Put in some additional checks and such.
* Tried to clean up and "standardize" the for loops.
* Renamed some functions that shouldn't have declaration collisions.