diff --git a/Changes b/Changes
index 3ee25bc..8bd48bd 100644
--- a/Changes
+++ b/Changes
@@ -1,5 +1,14 @@
+0.51 2015-03-03
+        - This is a major version (prepared for the GitHub release)
+        - [cleanup] Changed groupID to "de.ids_mannheim.korap",
+	  renamed korap-style.xml to Format.xml (diewald)
+	- [bugfix] Updated Format.xml to work with
+	  recent versions of Eclipse (diewald)
+        - [documentation] Improved documentation for API classes (diewald)
+
 0.50.1 2015-03-02
-	- [feature] Deserialization of arbitrary elements with attributes (margaretha)
+	- [feature] Deserialization of arbitrary elements with
+	  attributes (margaretha)
 	- [cleanup] Extracted KrillMeta from Krill,
 	  renamed KorapQuery to KrillQuery,
 	  extracted QueryBuilder from KrillQuery,
@@ -57,12 +66,15 @@
 	  on focussing (e.g., set by relations) (diewald)
 	- [bugfix] Hopefully fixing a resource related bug for
 	  server instantiation (diewald)
-	- [bugfix] Changed attribute spans to contain element's width (margaretha)
+	- [bugfix] Changed attribute spans to contain element's
+	  width (margaretha)
 	- [feature] Improved highlighting to use semantic html5 (#193; diewald)
 
 0.49.3 2015-02-03
-        - [documentation] Improved documentation for API classes (diewald)
-	- [documentation] Improved documentation for various queries (margaretha)
+        - [documentation] Improved documentation for
+	  API classes (diewald)
+	- [documentation] Improved documentation for
+	  various queries (margaretha)
 	- [feature] Added deserialization of SpanSubSpanQueries
           (margaretha, diewald)
 	- [bugfix] Null filters are now correctly extended (diewald)
@@ -76,25 +88,27 @@
 	  (diewald, margaretha)
 
 0.49.2 2014-12-05
-	- [documentation] Improved documentation for various queries (margaretha)
+	- [documentation] Improved documentation for
+          various queries (margaretha)
 	- [feature] Added @Experimental support (margaretha)
 	- [feature] Added Eclipse based code formatting (diewald)
 
 0.49.1 2014-11-25
-        - [cleanup] Major refactoring for new response messages (diewald)
-	- [cleanup] Removed deprecated error messaging (diewald)
-        - [cleanup] Removed long-term deprecated methods in KorapResult (diewald)
-        - [cleanup] Removed long-term deprecated methods in KorapMatch (diewald)
-	- [cleanup] Renamed toJSON->toJsonString (diewald)
-	- [cleanup] Renamed toJSONnode->toJsonNode (diewald)
-	- [cleanup] Renamed fromJSON->fromJson (diewald)
+        - [cleanup] Major refactoring for new response messages,
+	  removed deprecated error messaging,
+          removed long-term deprecated methods in KorapResult,
+	  removed long-term deprecated methods in KorapMatch,
+	  renamed toJSON->toJsonString
+	  renamed toJSONnode->toJsonNode,
+	  renamed fromJSON->fromJson (diewald)
 	- [documentation] Improved documentation for notifications (diewald)
 
 0.49 2014-11-14
         - This is a major version (prepared for the Evaluation Meeting)
         - [bugfix] Rewrite works in repeating expansions (margaretha)
 	- [feature] Clean timeout with parameter support (diewald)
-	- [workaround] Support unknown overlap frame, if frames are known (diewald)
+	- [workaround] Support unknown overlap frame,
+	  if frames are known (diewald)
 	- [bugfix] Class payload fixed in SpanRepetitions (margaretha)
 	- [bugfix] #179 Expansion bug fixed (margaretha)
 	- [bugfix] Corrected small bug where null warnings where
@@ -141,7 +155,8 @@
         - [cleanup] Prepare test suite for publication (diewald)
 
 0.44 2014-09-28
-        - [feature] Match collector using database for distributed search (diewald)
+        - [feature] Match collector using database for
+	  distributed search (diewald)
 	- [bugfix] Unified boundary handling and prevent nullpointer
 	  exceptions on parsing (diewald)
 	- [bugfix] Ordering of payloads reversed to make nesting highlights
@@ -149,7 +164,8 @@
    	- [performance] Updated Lucene dependency from 4.3.1 to 4.5.1 (diewald)
    	- [performance] Updated Jackson dependency from 2.2.2 to 2.4.0 (diewald)
 	- [bugfix] Return matches correctly with JSON (diewald)
-	- [bugfix] Repare database tests working with temporary databases (diewald)
+	- [bugfix] Repare database tests working with temporary
+	  databases (diewald)
 
 0.43 2014-09-23
         - [cleanup] Made a lot of stuff rely on KorapResponse (diewald)
@@ -177,7 +193,8 @@
 0.32 2014-08-01
         - [bugfix] Fix for repetition candidates (margaretha)
  	- [bugfix] Some fixes for negative segments (diewald)
- 	- [bugfix] SpanMatchModify now skips in case the requested class isn't found (diewald)
+ 	- [bugfix] SpanMatchModify now skips in case the
+	  requested class isn't found (diewald)
  	- [performance] Some logging issues fixed (diewald)
 
 0.31.8 2014-07-24
@@ -264,7 +281,8 @@
         - Added sentence extension for match info (diewald)
 
 0.30 2014-02-13
-        - This is a major version (prepared for the IDS meeting on the 17th of february)
+        - This is a major version
+	  (prepared for the IDS meeting on the 17th of february)
 	- Improved stringification for distance queries (margaretha)
 
 0.26.4 2014-02-12
@@ -293,7 +311,7 @@
 
 0.25.3 2014-01-10
         - Updated Lucene to 4.3.1 (diewald)
-	- Eliza Margaretha has joined the team
+	- Welcome! Eliza Margaretha has joined the team!
 
 0.25.2 2013-12-29
         - Fixed highlight bug with empty reopened tags
diff --git a/pom.xml b/pom.xml
index 1f15f7b..83dcd54 100644
--- a/pom.xml
+++ b/pom.xml
@@ -22,9 +22,9 @@
              /data/hdd/lucene-new/WPD/
   -->
 
-  <groupId>KorAP-modules</groupId>
+  <groupId>de.ids_mannheim.korap</groupId>
   <artifactId>Krill</artifactId>
-  <version>0.50.1</version>
+  <version>0.51</version>
   <packaging>jar</packaging>
 
   <name>Krill</name>
@@ -150,22 +150,20 @@
 
     <!-- JSON support in Jersey -->
     <!--
-	<dependency>
-	<groupId>org.glassfish.jersey.media</groupId>
-	<artifactId>jersey-media-moxy</artifactId>
-	</dependency>
+    <dependency>
+      <groupId>org.glassfish.jersey.media</groupId>
+      <artifactId>jersey-media-moxy</artifactId>
+    </dependency>
     <dependency>
       <groupId>com.sun.jersey</groupId>
       <artifactId>jersey-json</artifactId>
       <version>1.9</version>
     </dependency>
-    -->
-    <!--
-	<dependency>
-	<groupId>org.glassfish.jersey.media</groupId>
-	<artifactId>jersey-media-json-jackson</artifactId>
-	<version>2.16</version>
-	</dependency>
+    <dependency>
+      <groupId>org.glassfish.jersey.media</groupId>
+      <artifactId>jersey-media-json-jackson</artifactId>
+      <version>2.16</version>
+    </dependency>
     -->
     <dependency>
       <groupId>com.fasterxml.jackson.jaxrs</groupId>
@@ -199,9 +197,7 @@
       <artifactId>jsonld-java</artifactId>
       <version>0.5.2-SNAPSHOT</version>
     </dependency>
-    -->
 
-    <!--
     Temporarily disable @Experimental annotation
     <dependency>
       <groupId>KorapAnnotationProcessor</groupId>
@@ -305,7 +301,7 @@
           </execution>
         </executions>
         <configuration>
-          <mainClass>de.ids_mannheim.korap.KorapNode</mainClass>
+          <mainClass>de.ids_mannheim.korap.server.Node</mainClass>
         </configuration>
       </plugin>
     </plugins>
@@ -315,14 +311,14 @@
         <directory>src/main/resources</directory>
         <filtering>true</filtering>
 	<includes>
-	  <include>index.properties</include>
+	  <include>krill.properties</include>
 	</includes>
       </resource>
       <resource>
         <directory>src/main/resources</directory>
         <filtering>false</filtering>
 	<excludes>
-	  <exclude>index.properties</exclude>
+	  <exclude>krill.properties</exclude>
 	</excludes>
       </resource>
     </resources> 
@@ -332,14 +328,14 @@
         <directory>src/test/resources</directory>
         <filtering>true</filtering>
 	<includes>
-	  <include>index.properties</include>
+	  <include>krill.properties</include>
 	</includes>
       </testResource>
       <testResource>
         <directory>src/test/resources</directory>
         <filtering>false</filtering>
 	<excludes>
-	  <exclude>index.properties</exclude>
+	  <exclude>krill.properties</exclude>
 	</excludes>
       </testResource>
     </testResources> 
diff --git a/src/main/resources/log4j.properties b/src/main/resources/log4j.properties
index 71a8d03..9bd7ad2 100644
--- a/src/main/resources/log4j.properties
+++ b/src/main/resources/log4j.properties
@@ -1,36 +1,39 @@
-## logger file can be used with
-
 # log4j.rootLogger = ERROR, stdout
 
-# Spans:
-#log4j.logger.de.ids_mannheim.korap.query.spans.ElementSpans = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.AttributeSpans = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.ElementAttributeSpans = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.KorapTermSpan = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.WithinSpans = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.SpanNextQuery = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.NextSpans = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.SimpleSpans = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.ClassSpans = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.MatchModifyClassSpans = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.query.spans.MatchSpans = TRACE, stdout
+# Queries:
+# log4j.logger.de.ids_mannheim.korap.query.SpanNextQuery = TRACE, stdout
 
-# Wrapper
-# log4j.logger.de.ids_mannheim.korap.KorapQuery = TRACE, stdout
+# Spans:
+# log4j.logger.de.ids_mannheim.korap.query.spans.ElementSpans = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.AttributeSpans = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.ElementAttributeSpans = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.KorapTermSpan = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.WithinSpans = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.NextSpans = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.SimpleSpans = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.ClassSpans = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.FocusSpans = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.query.spans.MatchSpans = TRACE, stdout
+
+# Wrappers:
+# log4j.logger.de.ids_mannheim.korap.KrillQuery = TRACE, stdout
 # log4j.logger.de.ids_mannheim.korap.query.wrap.SpanSequenceQueryWrapper = TRACE, stdout
 
-# Collections
-#log4j.logger.de.ids_mannheim.korap.KorapFilter = TRACE, stdout
-# log4j.logger.de.ids_mannheim.korap.KorapCollection = TRACE, stdout
+# Collections:
+# log4j.logger.de.ids_mannheim.korap.collection.Filter = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.KrillCollection = TRACE, stdout
 
-# Results:
-#log4j.logger.de.ids_mannheim.korap.KorapIndex = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.KorapNode = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.KorapMatch = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.index.PositionsToOffset = TRACE, stdout
+# Responses:
+# log4j.logger.de.ids_mannheim.korap.server.Node = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.response.Match = TRACE, stdout
 
-#log4j.logger.de.ids_mannheim.korap.index.TestSegmentIndex = TRACE, stdout
-#log4j.logger.de.ids_mannheim.korap.analysis.MultiTermTokenStream = TRACE, stdout
+# Index:
+# log4j.logger.de.ids_mannheim.korap.KrillIndex = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.index.PositionsToOffset = TRACE, stdout
+# log4j.logger.de.ids_mannheim.korap.index.MultiTermTokenStream = TRACE, stdout
+
+# Tests:
+# log4j.logger.de.ids_mannheim.korap.index.TestSegmentIndex = TRACE, stdout
 
 log4j.appender.stdout=org.apache.log4j.ConsoleAppender
 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
