Check for latest version if release not found. Cleanup. Version 1.0.0
diff --git a/.gitignore b/.gitignore
index 1c37ffb..446acd8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 .gradle/
 .idea/
 **/build/
+**/.DS_Store
diff --git a/starter/build.gradle b/starter/build.gradle
index 4aa8739..0696646 100644
--- a/starter/build.gradle
+++ b/starter/build.gradle
@@ -1,2 +1,8 @@
 apply plugin: 'java'
 
+jar {
+    archiveName = "grails-wrapper.jar"
+    manifest {
+        attributes 'Main-Class': 'grails.init.Start'
+    }
+}
\ No newline at end of file
diff --git a/starter/src/main/java/grails/init/FindReleaseHandler.java b/starter/src/main/java/grails/init/FindReleaseHandler.java
index bfdd339..c05f3ae 100644
--- a/starter/src/main/java/grails/init/FindReleaseHandler.java
+++ b/starter/src/main/java/grails/init/FindReleaseHandler.java
@@ -9,23 +9,41 @@
  */
 public class FindReleaseHandler extends DefaultHandler {
 
-    public String version;
+    private String releaseVersion;
+    private String latestVersion;
 
-    private boolean foundVersion;
+    private boolean foundRelease;
+    private boolean foundLatest;
 
     @Override
     public void startElement(String uri, String localName,String qName,
                             Attributes attributes) {
         if (qName.equalsIgnoreCase("RELEASE")) {
-            foundVersion = true;
+            foundRelease = true;
+        }
+        if (qName.equalsIgnoreCase("LATEST")) {
+            foundLatest = true;
         }
     }
 
     @Override
     public void characters(char ch[], int start, int length) throws SAXException {
-        if (foundVersion) {
-            version = new String(ch, start, length);
+        if (foundRelease) {
+            releaseVersion = new String(ch, start, length);
         }
-        foundVersion = false;
+        if (foundLatest) {
+            latestVersion = new String(ch, start, length);
+        }
+        foundLatest = false;
+        foundRelease = false;
+    }
+
+    public String getVersion() {
+        if (releaseVersion != null) {
+            return releaseVersion;
+        } else if (latestVersion != null) {
+            return latestVersion;
+        }
+        return null;
     }
 }
diff --git a/starter/src/main/java/grails/init/Start.java b/starter/src/main/java/grails/init/Start.java
index fec9d54..586c73d 100644
--- a/starter/src/main/java/grails/init/Start.java
+++ b/starter/src/main/java/grails/init/Start.java
@@ -15,24 +15,25 @@
 
 public class Start {
 
-    private static String baseUrl = "http://repo.grails.org/grails/core/org/grails/grails-datastore-web";
+    private static final String PROJECT_NAME = "grails-wrapper";
+    private static final String BASE_URL = "http://repo.grails.org/grails/core/org/grails/" + PROJECT_NAME;
 
     public static void main(String[] args) {
         try {
             SAXParserFactory factory = SAXParserFactory.newInstance();
             SAXParser saxParser = factory.newSAXParser();
             FindReleaseHandler findReleaseHandler = new FindReleaseHandler();
-            saxParser.parse(new URL(baseUrl + "/maven-metadata.xml").openStream(), findReleaseHandler);
+            saxParser.parse(new URL(BASE_URL + "/maven-metadata.xml").openStream(), findReleaseHandler);
 
-            final String jarFileName = "grails-datastore-web-" + findReleaseHandler.version + ".jar";
+            final String jarFileName = PROJECT_NAME + "-" + findReleaseHandler.getVersion() + ".jar";
             File wrapperDir = new File(System.getProperty("user.home") + "/.grails/wrapper");
             wrapperDir.mkdirs();
 
             File existingWrapper = new File(wrapperDir, jarFileName);
-            File noVersionJar = new File(wrapperDir, "grails-datastore-web.jar");
+            File noVersionJar = new File(wrapperDir, PROJECT_NAME + ".jar");
 
             if (!existingWrapper.exists()) {
-                URL website = new URL(baseUrl + "/" + findReleaseHandler.version + "/" + jarFileName);
+                URL website = new URL(BASE_URL + "/" + findReleaseHandler.getVersion() + "/" + jarFileName);
                 ReadableByteChannel rbc = Channels.newChannel(website.openStream());
                 FileOutputStream fos = new FileOutputStream(existingWrapper);
                 fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
diff --git a/wrapper/build.gradle b/wrapper/build.gradle
index 5db7812..32c5a05 100644
--- a/wrapper/build.gradle
+++ b/wrapper/build.gradle
@@ -17,7 +17,7 @@
 }
 
 group 'org.grails'
-version '1.0.0.BUILD-SNAPSHOT'
+version '1.0.0'
 
 apply plugin:'groovy'
 apply plugin: 'maven-publish'