Basic functionality is complete

I'm sure a lot of this code is terrible but I'm looking learn about the correct way to do things in Clojure.
Will probably look better with a threading macro `(->> (flatten ..) sort reverse (take ..) ...).