Fixing issue #126 with Leiningen 2.5.0 due to auto-cleaning of targets

Fixing issue #126 with Leiningen 2.5.0 due to auto-cleaning of targets being the default behaviour and thus wiping the auto-compiled main class before packing.

With this fix the auto-clean, if not set to false in project.clj, is made before compile-main.
BTW, this thing with using the metadata to store an old version and getting it back somewhere "hidden" got me crazy as hell, because I couldn't understand why just doing `(merge project {:auto-clean true})` didn't work... I lost a couple of hours with this, debugging my own compilation of leiningen-2.5.0.