Lots of changes:
Added a field that allows the user to set the time
Added different marker type capabilities (the actual types are only temporary)
Improved the cache and replaced the old ArrayList backing with a new LinkedHashMap that removes the least-recently-accessed entries