Add asplode/preserve-ns-references, default :gen-class to nil

This will preserve any extant :gen-class and :load clauses from the old
ns-map, as well as all the :refer, :exclude, and :renames necessary to
reconstruct a :refer-clojure clause.

In order to distinguish an empty clause (:gen-class) from none at all,
we default the value of :load and :gen-class to nil in the default
nsrefs map, then change the handling of empty-seq vs nil when emitting
forms.