diff --git a/Changes.BACKUP.7786 b/Changes.BACKUP.7786
new file mode 100644
index 0000000..81c0ee1
--- /dev/null
+++ b/Changes.BACKUP.7786
@@ -0,0 +1,458 @@
+<<<<<<< HEAD
+=======
+0.54 2015-09-30
+   	- [performance] Updated Lucene dependency from 4.10.3
+	  to 5.0.0 (diewald)
+        - [bugfix] Minor fixes regarding invalid tokens in the
+	  test suite (diewald)
+
+>>>>>>> Lucene-5.3.1-Update
+0.53 2015-09-25
+        - [feature] Implemented new KrillCollection (diewald)
+	  This should fix a lot of issues with deleted
+	  documents and negation in virtual collections.
+	- [cleanup] REMOVED deprecated collection filtering (diewald)
+	- [cleanup] REMOVED deprecated termRelation API (diewald)
+	- [feature] Added removal methods for documents (diewald)
+	- [cleanup] REMOVED search method in KrillCollection (diewald)
+        - [bugfix] Fixed collection statistics (diewald)
+	- [feature] Improved packaging (diewald)
+	- [feature] Introduced cmd options for server (diewald)
+    	- [feature] Return meta data on server-based indexation (diewald)
+
+0.52 2015-07-08
+        - [bugfix] Fixed payload filtering in FocusSpans (margaretha)
+	- [workaround] Reintroduced empty collection support,
+	  as Koral still creates them (diewald)
+	- [bugfix] Escaped characters now supported in MutiTerm (diewald)
+	- [feature] Deserialization of flags (diewald)
+	- [feature] Made responses valid KoralQueries (diewald)
+	- [bugfix] Fixed sequence deserialization bug for simple unordered
+	  constraint (diewald)
+	- [bugfix] Mirror collection (diewald)
+	- [bugfix] Updated default fields for meta data (diewald)
+	- [bugfix] Updated match identifier for "sigle" data (diewald)
+	- [workaround] Support corpusID/docID and textSigle match strings
+	  (diewald)
+	- [workaround] Support matches starting with "contains"
+	  (Kustvakt bug/diewald)
+	- [bugfix] Fixed treatment of several collection types (diewald)
+	- [bugfix] Remove legacy error handling in Match (diewald)
+	- [bugfix] JSON-serialization bug in match in case of
+	  error messages (diewald)
+	- [bugfix] 'fields' serialization (diewald)
+	- [bugfix] Deserialization of group:disjunction (diewald)
+	- [bugfix] Deserialization of wrapped spans (diewald)
+	- [bugfix] Fix KoralQuery mirroring in case of
+	  parsing failures (diewald)
+	- [feature] Support '@all' as a 'fields' value for all meta
+	  data fields (diewald)
+	- [bugfix] Fix case sensitivity bug in filters (diewald)
+	- [bugfix] Fix sentence expansion bug for new data (diewald)
+	- [bugfix] Deserialization of 'containsnot' instead of 'excludes'
+	  (diewald)
+
+0.51 2015-03-17
+        - 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)
+	- [bugfix] Updated AttributeSpans (margaretha)
+	- [bugfix] Updated SpanRelationQuery (margaretha)
+	- [cleanup] Autoformat (diewald)
+        - [documentation] References added to the Readme (diewald)
+	- [bugfix] Improved failing for missing property file (kupietz)
+	- [bugfix] Fixed tests for server responses to not use
+	  Jackson deserialization (diewald)
+	- [cleanup] No more jersey logging in tests (diewald)
+
+0.50.1 2015-03-02
+	- [feature] Deserialization of arbitrary elements with
+	  attributes (margaretha)
+	- [cleanup] Extracted KrillMeta from Krill,
+	  renamed KorapQuery to KrillQuery,
+	  extracted QueryBuilder from KrillQuery,
+	  renamed KorapIndexer to index/Indexer,
+	  renamed KorapDocument to model/AbstractDocument,
+	  renamed KorapMatch to response/Match,
+	  renamed KorapIndex to KrillIndex,
+	  renamed KorapCollection to KrillCollection,
+	  moved collector classes from index to response,
+	  renamed KorapDate to KrillDate,
+	  renamed KorapArray to KrillArray,
+	  renamed KorapByte to KrillByte,
+	  renamed KorapString to KrillString,
+	  moved KorapNode to server/Node,
+	  moved KorapResult to response/Result,
+	  renamed KorapResponse to Response,
+	  moved model/* to index,
+	  moved meta/SearchContext to response/SearchContext,
+	  krillified property files,
+	  added Errorcodes,
+	  removed KrillIndex#addDocFile (diewald)
+        - [documentation] Improved documentation for API classes (diewald)
+
+0.50 2015-02-23
+        - Project name is now "Krill"
+
+0.49.4 2015-02-20
+        - [documentation] Improved documentation for API classes (diewald)
+	- [cleanup] Improved test coverage for utility classes (diewald)
+   	- [performance] Updated Lucene dependency from 4.5.1 to 4.10.3,
+	  Updated Jackson dependency from 2.4.0 to 2.4.4,
+   	  Updated Jersey dependency from 2.4.1 to 2.15 (diewald)
+        - [feature] Presorting of element terms in the index for coherent
+	  SpanQuery sorting; Removed buffering of element candidates (diewald)
+	  Warning: This is a breaking change!
+	- [feature] Added CorpusDataException to deal with data importing bugs;
+          made some imports break more easily though (diewald)
+	- [performance] Payloads in ElementSpans can now be lazily loaded,
+	  MatchModifyClassSpans no longer rely on payload copies (diewald)
+	- [cleanup] Renamed /filter to /collection, 
+	  merge KorapHTML and KorapString,
+	  removed KorapSpan, KorapTermSpan and KorapLongSpan,
+	  renamed /analysis to /model,
+	  renamed shrink() to focus(),
+	  removed KorapPrimaryData,
+          fixed a lot of wrong tests for WithinSpans,
+	  renamed KorapFilter to /collection/CollectionBuilder,
+	  renamed SpanMatchModify to SpanFocus,
+	  changed KoralQuery root prefix to "koral",
+	  renamed different kinds of "queries" throughout classes,
+	  renamed KorapSearch#run to KorapSearch#apply (diewald)
+        - [feature] Improved deserialization of SpanSubSpanQueries
+          (margaretha)
+	- [feature] Introducing the potential need for resorting queries
+	  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)
+	- [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)
+	- [feature] Added deserialization of SpanSubSpanQueries
+          (margaretha, diewald)
+	- [bugfix] Null filters are now correctly extended (diewald)
+	- [cleanup] Refactoring of KorapResult, KorapResponse, KorapQuery,
+	  deprecated operation:or in favor of operation:junction,
+	  updating test suite for class and frame attributes (diewald)
+	- [bugfix] Empty class segments are now correctly serialized
+	  in sequences (diewald)
+	- [feature] Started support for position frames (diewald)
+	- [bugfix] Fixed #134 Nullpointer exception in WithinSpans
+	  (diewald, margaretha)
+
+0.49.2 2014-12-05
+	- [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,
+	  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)
+	- [bugfix] Class payload fixed in SpanRepetitions (margaretha)
+	- [bugfix] #179 Expansion bug fixed (margaretha)
+	- [bugfix] Corrected small bug where null warnings where
+	  returned in JSON (diewald)
+	- [cleanup] Converted error to failure (diewald)
+	- [bugfix] Added const layer rewrite (diewald)
+
+0.48 2014-11-07
+        - This is a major version (prepared for the "Tag der Offenen Tür")
+        - [feature] Retrieval of token lists (diewald)
+	- [bugfix] Classes can now be highlighted to 127.
+	- [bugfix] Sequences with distances won't be flattened in
+  	  SpanSequenceQueryWrapper (diewald)
+	- [bugfix] Sequences with [problem][problem][anchor] can now
+	  be deserialized (diewald)
+	- [bugfix] Queries with regular expressions in spanNext() are now
+	  correctly rewritten (diewald)
+	- [bugfix] Ignore foundry for orth layer (diewald)
+	- [feature] Support fields in meta (diewald)
+	- [workaround] Support more legacy APIs (diewald)
+	- [bugfix] Check for the existence of @type in JSON-LD groups
+	  to avoid NullPointer (diewald)
+	- [cleanup] Validated query and collection input - limited
+	  to a "don't break anyting" policy (diewald)
+
+0.47 2014-11-05
+        - [feature] Support new index format with more metadata (diewald)
+	- [bugfix] #142 Fixed class spans for skipTo() skips (margaretha)
+	- [feature] Added attribute support to relations (margaretha)
+	- [bugfix] Make classes and shrink default to 1 instead of 0 (diewald)
+	- [bugfix] shrink now removes all non-classes payloads (diewald)
+
+0.46 2014-10-21
+        - [feature] Support for relation queries (margaretha)
+	- [feature] Wrapping of extension queries
+	  (not completely tested yet; diewald)
+
+0.45 2014-10-06
+        - [bugfix] Correctly respond request in JSON results (diewald)
+        - [cleanup] Made SpanQueryWrapper an abstract class instead
+	  of an interface (diewald)
+
+0.44.1 2014-09-29
+        - [cleanup] Prepare test suite for publication (diewald)
+
+0.44 2014-09-28
+        - [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
+	  nest correctly (diewald)
+   	- [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)
+
+0.43 2014-09-23
+        - [cleanup] Made a lot of stuff rely on KorapResponse (diewald)
+	- [bugfix] Small but ancient collection bug fixed (diewald)
+	- [feature] Collect first matches of documents based on UIDs (diewald)
+
+0.42 2014-09-19
+        - [cleanup] Extracted private classes from KorapMatch (diewald)
+	- [bugfix] Fix query rewrite in contains-queries (diewald)
+
+0.41 2014-09-17
+        - [feature] getStartPos(classNr) and getEndPos(classNr)
+          in KorapMatch (diewald)
+        - [bugfix] SpanExpansionQuery with fixed Constructor
+	  and Exclusion handling (margaretha)
+        - [feature] Early implementation of match collector (diewald)
+
+0.40 2014-09-03
+        - [feature] Skeleton for standalone REST service (diewald)
+
+0.33 2014-09-01
+        - [feature] SpanSubspanQuery (margaretha)
+        - [feature] SpanExpansionQuery (margaretha)
+
+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)
+ 	- [performance] Some logging issues fixed (diewald)
+
+0.31.8 2014-07-24
+        - [feature] Added optionality to querys for quantifiers (diewald)
+        - [feature] Support for korap:boundary deserialization (diewald)
+
+0.31.7 2014-07-18
+        - [feature] Added warnings to responses (diewald)
+
+0.31.6 2014-06-30
+        - [feature] Support for korap:reference deserialization (diewald)
+	- [feature] Preliminary support for attributes in elements (margaretha)
+	- [feature] Preliminary support operation:repetition deserialization
+	  (unfinished and untested; diewald)
+
+0.31.5 2014-06-17
+        - [feature] Batch return of defined foundries and layers in
+	  getMatchInfo() (diewald)
+	- [security] Improve foundry and layer check before injection in
+	  regex (diewald)
+
+0.31.4 2014-06-16
+        - [feature] MatchModifyClassQuery now can extend (diewald)
+	- [bugfix] Make matchinfo a bit more robust (diewald)
+
+0.31.3 2014-06-11
+        - [bugfix] Minor bugfix regarding treatment of
+	  failed search results (diewald)
+
+0.31.2 2014-05-28
+        - [feature] Request parameter "itemsPerResource" limits
+	  hits per document (diewald)
+
+0.31.1 2014-05-21
+        - [bugfix] Minor bugfix for wrongly serialized contexts
+	  in responses (diewald)
+
+0.31.0 2014-05-20
+        - [feature] span contexts in JSON-LD are now supported
+        - [bugfix] Multiple bugfixes regarding span context
+          extensions (diewald)
+        - [bugfix] Minor debugging bugs (diewald)
+
+0.30.9 2014-04-11
+        - [bugfix] Prevent multiple identifiers in
+	  relation highlighting (diewald)
+
+0.30.8 2014-04-10
+        - Added getTermRelationJSON() to KorapCollection (diewald)
+	  This is likely to get deprecated!
+
+0.30.7 2014-04-09
+        - Moved JSON interpretation from BooleanFilter to KorapFilter (diewald)
+	- Added 'or' and group nesting to KorapFilter (diewald)
+
+0.30.6 2014-03-20
+        - Refactoring and cleaning of ElementSpans (diewald)
+	- [bugfix] Stabilizing KorapMatch (diewald)
+
+0.30.5 2014-03-18
+	- Support for Quantifier Queries (margaretha)
+	- Some benchmarks (margaretha)
+        - [bugfix] WithinSpans respect match payloads,
+	  and are now way more correct ;) (diewald)
+	- Support for overlap queries (diewald)
+	- Refactoring of WithinSpans (diewald)
+	- Introducing lazy loading for wrapper .end() in WithinSpans (diewald)
+
+0.30.4 2014-02-26
+        - [cleanup] Making MultiTerm* more robust (diewald)
+
+0.30.3 2014-02-20
+        - Return json request in response if given (diewald)
+	- [bugfix] ClassSpans and WithinSpans check skipTo
+	  in advance now (diewald)
+	- Compilerfriendly logging rules, resulting
+	  in significant performance improvements (diewald)
+	- Small refactorings (diewald)
+
+0.30.2 2014-02-14
+        - [bugfix] wrapper uses correct distance constraint (diewald)
+
+0.30.1 2014-02-13
+        - 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)
+	- Improved stringification for distance queries (margaretha)
+
+0.26.4 2014-02-12
+        - Serialize SpanDistanceQueries and SpanMultipleDistanceQueries
+          (diewald)
+	- [temporarily] Added default foundry "mate" in KorapQuery (diewald)
+
+0.26.3 2014-02-12
+        - [bugfix] Only open writer in case it's needed (diewald)
+
+0.26.2 2014-02-12
+        - Added sequence queries with defined gaps (margaretha)
+	- Support for multiple distance constraints (margaretha)
+	- Updated json-ld deserialization with nested meta (diewald)
+	- [bugfix] Wildcards in segments were ignored (diewald)
+
+0.26.1 2014-01-21
+        - Distinct Match retrieval including spans
+	  and dependency relations (diewald)
+
+0.26 2014-01-16
+        - Introduced standalone SpanSegmentQueries (margaretha)
+        - [bugfix] SpanNextQueries (margaretha)
+	- Support for Match Identifiers (diewald)
+	- Support for distinct Match retrieval (diewald)
+
+0.25.3 2014-01-10
+        - Updated Lucene to 4.3.1 (diewald)
+	- Welcome! Eliza Margaretha has joined the team!
+
+0.25.2 2013-12-29
+        - Fixed highlight bug with empty reopened tags
+
+0.25.1 2013-12-28
+        - Support for pubDate collections
+	- Changed versioning scheme
+
+0.25 2013-12-20
+        - Support for Wildcard Queries
+	- Improved support for regular expressions
+	- Introduced keyword fields that store no positions
+
+0.24_1 2013-12-05
+        - This is a pseudo version for demo versions with dirty hacks,
+	  meant to be rolled back!
+	- There is now an ignored broken test in TestKorapCollection
+
+0.24 2013-12-05
+        - Json deserializer finished for virtual collections
+
+0.23 2013-12-05
+        - Error handling corrected in KorapResult
+	- Json deserializer finished for queries
+
+0.22 2013-12-04
+        - Introduced KorapSearch
+	- Json deserializer (started)
+
+0.21 2013-11-28
+        - Virtual collections can now be defined,
+	  searched, nested and extended
+
+0.20 2013-11-18
+        - Unboxing from sandbox repository
+
+0.11 2013-11-14
+	- JSON file importer (plain and gzip)
+	- [bugfix] Element Query
+	- [bugfix] Sequence Query
+
+0.10 2013-11-11
+        - Added JSON input to indexer
+
+0.09 2013-11-07
+        - Reconstruction of all wrapper queries using an interface
+	- Finished KorapQuery (preliminary feature freeze)
+
+0.08 2013-10-18
+        - Changed methods to attributes in KorapMatch
+	- Changed SimpleJSON to Jackson
+	- Fixed Highlighting
+	- Some Refactoring of result classes
+	- Introduced KorapDocument
+	- Introduced KorapHTML utility
+
+0.07 2013-10-14
+        - Added position to offset matching
+
+0.06 2013-10-01
+        - Added SpanElementQuery for working WithinQeries
+	- Added KorapResult and KorapMatching
+
+0.05 2013-09-18
+        - Fixed bug in indexing (MultiTermTokenStream)
+	- Fixed SpanNext
+	- Added KorapIndex
+	- First draft for KorapFilter
+
+0.04 2013-09-01
+        - Introduced optimized SpanNext class (not working atm),
+	  as SpanNear does not always work with nested synonyms
+
+0.03 2013-08-28
+        - Added within query (not working atm)
+	- Pushed query part to public repo
+
+0.02 2013-08-26
+        - Added sequences
+
+0.01 2013-08-20
+        - First version as maven build environment
diff --git a/Changes.BASE.7786 b/Changes.BASE.7786
new file mode 100644
index 0000000..11091fa
--- /dev/null
+++ b/Changes.BASE.7786
@@ -0,0 +1,448 @@
+0.53 2015-08-14
+        - [feature] Implemented new KrillCollection (diewald)
+	  This should fix a lot of issues with deleted
+	  documents and negation in virtual collections.
+	- [cleanup] REMOVED deprecated collection filtering (diewald)
+	- [cleanup] REMOVED deprecated termRelation API (diewald)
+	- [feature] Added removal methods for documents (diewald)
+	- [cleanup] REMOVED search method in KrillCollection (diewald)
+        - [bugfix] Fixed collection statistics (diewald)
+	- [feature] Improved packaging (diewald)
+	- [feature] Introduced cmd options for server (diewald)
+
+0.52 2015-07-08
+        - [bugfix] Fixed payload filtering in FocusSpans (margaretha)
+	- [workaround] Reintroduced empty collection support,
+	  as Koral still creates them (diewald)
+	- [bugfix] Escaped characters now supported in MutiTerm (diewald)
+	- [feature] Deserialization of flags (diewald)
+	- [feature] Made responses valid KoralQueries (diewald)
+	- [bugfix] Fixed sequence deserialization bug for simple unordered
+	  constraint (diewald)
+	- [bugfix] Mirror collection (diewald)
+	- [bugfix] Updated default fields for meta data (diewald)
+	- [bugfix] Updated match identifier for "sigle" data (diewald)
+	- [workaround] Support corpusID/docID and textSigle match strings
+	  (diewald)
+	- [workaround] Support matches starting with "contains"
+	  (Kustvakt bug/diewald)
+	- [bugfix] Fixed treatment of several collection types (diewald)
+	- [bugfix] Remove legacy error handling in Match (diewald)
+	- [bugfix] JSON-serialization bug in match in case of
+	  error messages (diewald)
+	- [bugfix] 'fields' serialization (diewald)
+	- [bugfix] Deserialization of group:disjunction (diewald)
+	- [bugfix] Deserialization of wrapped spans (diewald)
+	- [bugfix] Fix KoralQuery mirroring in case of
+	  parsing failures (diewald)
+	- [feature] Support '@all' as a 'fields' value for all meta
+	  data fields (diewald)
+	- [bugfix] Fix case sensitivity bug in filters (diewald)
+	- [bugfix] Fix sentence expansion bug for new data (diewald)
+	- [bugfix] Deserialization of 'containsnot' instead of 'excludes'
+	  (diewald)
+
+0.51 2015-03-17
+        - 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)
+	- [bugfix] Updated AttributeSpans (margaretha)
+	- [bugfix] Updated SpanRelationQuery (margaretha)
+	- [cleanup] Autoformat (diewald)
+        - [documentation] References added to the Readme (diewald)
+	- [bugfix] Improved failing for missing property file (kupietz)
+	- [bugfix] Fixed tests for server responses to not use
+	  Jackson deserialization (diewald)
+	- [cleanup] No more jersey logging in tests (diewald)
+
+0.50.1 2015-03-02
+	- [feature] Deserialization of arbitrary elements with
+	  attributes (margaretha)
+	- [cleanup] Extracted KrillMeta from Krill,
+	  renamed KorapQuery to KrillQuery,
+	  extracted QueryBuilder from KrillQuery,
+	  renamed KorapIndexer to index/Indexer,
+	  renamed KorapDocument to model/AbstractDocument,
+	  renamed KorapMatch to response/Match,
+	  renamed KorapIndex to KrillIndex,
+	  renamed KorapCollection to KrillCollection,
+	  moved collector classes from index to response,
+	  renamed KorapDate to KrillDate,
+	  renamed KorapArray to KrillArray,
+	  renamed KorapByte to KrillByte,
+	  renamed KorapString to KrillString,
+	  moved KorapNode to server/Node,
+	  moved KorapResult to response/Result,
+	  renamed KorapResponse to Response,
+	  moved model/* to index,
+	  moved meta/SearchContext to response/SearchContext,
+	  krillified property files,
+	  added Errorcodes,
+	  removed KrillIndex#addDocFile (diewald)
+        - [documentation] Improved documentation for API classes (diewald)
+
+0.50 2015-02-23
+        - Project name is now "Krill"
+
+0.49.4 2015-02-20
+        - [documentation] Improved documentation for API classes (diewald)
+	- [cleanup] Improved test coverage for utility classes (diewald)
+   	- [performance] Updated Lucene dependency from 4.5.1 to 4.10.3,
+	  Updated Jackson dependency from 2.4.0 to 2.4.4,
+   	  Updated Jersey dependency from 2.4.1 to 2.15 (diewald)
+        - [feature] Presorting of element terms in the index for coherent
+	  SpanQuery sorting; Removed buffering of element candidates (diewald)
+	  Warning: This is a breaking change!
+	- [feature] Added CorpusDataException to deal with data importing bugs;
+          made some imports break more easily though (diewald)
+	- [performance] Payloads in ElementSpans can now be lazily loaded,
+	  MatchModifyClassSpans no longer rely on payload copies (diewald)
+	- [cleanup] Renamed /filter to /collection, 
+	  merge KorapHTML and KorapString,
+	  removed KorapSpan, KorapTermSpan and KorapLongSpan,
+	  renamed /analysis to /model,
+	  renamed shrink() to focus(),
+	  removed KorapPrimaryData,
+          fixed a lot of wrong tests for WithinSpans,
+	  renamed KorapFilter to /collection/CollectionBuilder,
+	  renamed SpanMatchModify to SpanFocus,
+	  changed KoralQuery root prefix to "koral",
+	  renamed different kinds of "queries" throughout classes,
+	  renamed KorapSearch#run to KorapSearch#apply (diewald)
+        - [feature] Improved deserialization of SpanSubSpanQueries
+          (margaretha)
+	- [feature] Introducing the potential need for resorting queries
+	  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)
+	- [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)
+	- [feature] Added deserialization of SpanSubSpanQueries
+          (margaretha, diewald)
+	- [bugfix] Null filters are now correctly extended (diewald)
+	- [cleanup] Refactoring of KorapResult, KorapResponse, KorapQuery,
+	  deprecated operation:or in favor of operation:junction,
+	  updating test suite for class and frame attributes (diewald)
+	- [bugfix] Empty class segments are now correctly serialized
+	  in sequences (diewald)
+	- [feature] Started support for position frames (diewald)
+	- [bugfix] Fixed #134 Nullpointer exception in WithinSpans
+	  (diewald, margaretha)
+
+0.49.2 2014-12-05
+	- [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,
+	  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)
+	- [bugfix] Class payload fixed in SpanRepetitions (margaretha)
+	- [bugfix] #179 Expansion bug fixed (margaretha)
+	- [bugfix] Corrected small bug where null warnings where
+	  returned in JSON (diewald)
+	- [cleanup] Converted error to failure (diewald)
+	- [bugfix] Added const layer rewrite (diewald)
+
+0.48 2014-11-07
+        - This is a major version (prepared for the "Tag der Offenen Tür")
+        - [feature] Retrieval of token lists (diewald)
+	- [bugfix] Classes can now be highlighted to 127.
+	- [bugfix] Sequences with distances won't be flattened in
+  	  SpanSequenceQueryWrapper (diewald)
+	- [bugfix] Sequences with [problem][problem][anchor] can now
+	  be deserialized (diewald)
+	- [bugfix] Queries with regular expressions in spanNext() are now
+	  correctly rewritten (diewald)
+	- [bugfix] Ignore foundry for orth layer (diewald)
+	- [feature] Support fields in meta (diewald)
+	- [workaround] Support more legacy APIs (diewald)
+	- [bugfix] Check for the existence of @type in JSON-LD groups
+	  to avoid NullPointer (diewald)
+	- [cleanup] Validated query and collection input - limited
+	  to a "don't break anyting" policy (diewald)
+
+0.47 2014-11-05
+        - [feature] Support new index format with more metadata (diewald)
+	- [bugfix] #142 Fixed class spans for skipTo() skips (margaretha)
+	- [feature] Added attribute support to relations (margaretha)
+	- [bugfix] Make classes and shrink default to 1 instead of 0 (diewald)
+	- [bugfix] shrink now removes all non-classes payloads (diewald)
+
+0.46 2014-10-21
+        - [feature] Support for relation queries (margaretha)
+	- [feature] Wrapping of extension queries
+	  (not completely tested yet; diewald)
+
+0.45 2014-10-06
+        - [bugfix] Correctly respond request in JSON results (diewald)
+        - [cleanup] Made SpanQueryWrapper an abstract class instead
+	  of an interface (diewald)
+
+0.44.1 2014-09-29
+        - [cleanup] Prepare test suite for publication (diewald)
+
+0.44 2014-09-28
+        - [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
+	  nest correctly (diewald)
+   	- [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)
+
+0.43 2014-09-23
+        - [cleanup] Made a lot of stuff rely on KorapResponse (diewald)
+	- [bugfix] Small but ancient collection bug fixed (diewald)
+	- [feature] Collect first matches of documents based on UIDs (diewald)
+
+0.42 2014-09-19
+        - [cleanup] Extracted private classes from KorapMatch (diewald)
+	- [bugfix] Fix query rewrite in contains-queries (diewald)
+
+0.41 2014-09-17
+        - [feature] getStartPos(classNr) and getEndPos(classNr)
+          in KorapMatch (diewald)
+        - [bugfix] SpanExpansionQuery with fixed Constructor
+	  and Exclusion handling (margaretha)
+        - [feature] Early implementation of match collector (diewald)
+
+0.40 2014-09-03
+        - [feature] Skeleton for standalone REST service (diewald)
+
+0.33 2014-09-01
+        - [feature] SpanSubspanQuery (margaretha)
+        - [feature] SpanExpansionQuery (margaretha)
+
+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)
+ 	- [performance] Some logging issues fixed (diewald)
+
+0.31.8 2014-07-24
+        - [feature] Added optionality to querys for quantifiers (diewald)
+        - [feature] Support for korap:boundary deserialization (diewald)
+
+0.31.7 2014-07-18
+        - [feature] Added warnings to responses (diewald)
+
+0.31.6 2014-06-30
+        - [feature] Support for korap:reference deserialization (diewald)
+	- [feature] Preliminary support for attributes in elements (margaretha)
+	- [feature] Preliminary support operation:repetition deserialization
+	  (unfinished and untested; diewald)
+
+0.31.5 2014-06-17
+        - [feature] Batch return of defined foundries and layers in
+	  getMatchInfo() (diewald)
+	- [security] Improve foundry and layer check before injection in
+	  regex (diewald)
+
+0.31.4 2014-06-16
+        - [feature] MatchModifyClassQuery now can extend (diewald)
+	- [bugfix] Make matchinfo a bit more robust (diewald)
+
+0.31.3 2014-06-11
+        - [bugfix] Minor bugfix regarding treatment of
+	  failed search results (diewald)
+
+0.31.2 2014-05-28
+        - [feature] Request parameter "itemsPerResource" limits
+	  hits per document (diewald)
+
+0.31.1 2014-05-21
+        - [bugfix] Minor bugfix for wrongly serialized contexts
+	  in responses (diewald)
+
+0.31.0 2014-05-20
+        - [feature] span contexts in JSON-LD are now supported
+        - [bugfix] Multiple bugfixes regarding span context
+          extensions (diewald)
+        - [bugfix] Minor debugging bugs (diewald)
+
+0.30.9 2014-04-11
+        - [bugfix] Prevent multiple identifiers in
+	  relation highlighting (diewald)
+
+0.30.8 2014-04-10
+        - Added getTermRelationJSON() to KorapCollection (diewald)
+	  This is likely to get deprecated!
+
+0.30.7 2014-04-09
+        - Moved JSON interpretation from BooleanFilter to KorapFilter (diewald)
+	- Added 'or' and group nesting to KorapFilter (diewald)
+
+0.30.6 2014-03-20
+        - Refactoring and cleaning of ElementSpans (diewald)
+	- [bugfix] Stabilizing KorapMatch (diewald)
+
+0.30.5 2014-03-18
+	- Support for Quantifier Queries (margaretha)
+	- Some benchmarks (margaretha)
+        - [bugfix] WithinSpans respect match payloads,
+	  and are now way more correct ;) (diewald)
+	- Support for overlap queries (diewald)
+	- Refactoring of WithinSpans (diewald)
+	- Introducing lazy loading for wrapper .end() in WithinSpans (diewald)
+
+0.30.4 2014-02-26
+        - [cleanup] Making MultiTerm* more robust (diewald)
+
+0.30.3 2014-02-20
+        - Return json request in response if given (diewald)
+	- [bugfix] ClassSpans and WithinSpans check skipTo
+	  in advance now (diewald)
+	- Compilerfriendly logging rules, resulting
+	  in significant performance improvements (diewald)
+	- Small refactorings (diewald)
+
+0.30.2 2014-02-14
+        - [bugfix] wrapper uses correct distance constraint (diewald)
+
+0.30.1 2014-02-13
+        - 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)
+	- Improved stringification for distance queries (margaretha)
+
+0.26.4 2014-02-12
+        - Serialize SpanDistanceQueries and SpanMultipleDistanceQueries
+          (diewald)
+	- [temporarily] Added default foundry "mate" in KorapQuery (diewald)
+
+0.26.3 2014-02-12
+        - [bugfix] Only open writer in case it's needed (diewald)
+
+0.26.2 2014-02-12
+        - Added sequence queries with defined gaps (margaretha)
+	- Support for multiple distance constraints (margaretha)
+	- Updated json-ld deserialization with nested meta (diewald)
+	- [bugfix] Wildcards in segments were ignored (diewald)
+
+0.26.1 2014-01-21
+        - Distinct Match retrieval including spans
+	  and dependency relations (diewald)
+
+0.26 2014-01-16
+        - Introduced standalone SpanSegmentQueries (margaretha)
+        - [bugfix] SpanNextQueries (margaretha)
+	- Support for Match Identifiers (diewald)
+	- Support for distinct Match retrieval (diewald)
+
+0.25.3 2014-01-10
+        - Updated Lucene to 4.3.1 (diewald)
+	- Welcome! Eliza Margaretha has joined the team!
+
+0.25.2 2013-12-29
+        - Fixed highlight bug with empty reopened tags
+
+0.25.1 2013-12-28
+        - Support for pubDate collections
+	- Changed versioning scheme
+
+0.25 2013-12-20
+        - Support for Wildcard Queries
+	- Improved support for regular expressions
+	- Introduced keyword fields that store no positions
+
+0.24_1 2013-12-05
+        - This is a pseudo version for demo versions with dirty hacks,
+	  meant to be rolled back!
+	- There is now an ignored broken test in TestKorapCollection
+
+0.24 2013-12-05
+        - Json deserializer finished for virtual collections
+
+0.23 2013-12-05
+        - Error handling corrected in KorapResult
+	- Json deserializer finished for queries
+
+0.22 2013-12-04
+        - Introduced KorapSearch
+	- Json deserializer (started)
+
+0.21 2013-11-28
+        - Virtual collections can now be defined,
+	  searched, nested and extended
+
+0.20 2013-11-18
+        - Unboxing from sandbox repository
+
+0.11 2013-11-14
+	- JSON file importer (plain and gzip)
+	- [bugfix] Element Query
+	- [bugfix] Sequence Query
+
+0.10 2013-11-11
+        - Added JSON input to indexer
+
+0.09 2013-11-07
+        - Reconstruction of all wrapper queries using an interface
+	- Finished KorapQuery (preliminary feature freeze)
+
+0.08 2013-10-18
+        - Changed methods to attributes in KorapMatch
+	- Changed SimpleJSON to Jackson
+	- Fixed Highlighting
+	- Some Refactoring of result classes
+	- Introduced KorapDocument
+	- Introduced KorapHTML utility
+
+0.07 2013-10-14
+        - Added position to offset matching
+
+0.06 2013-10-01
+        - Added SpanElementQuery for working WithinQeries
+	- Added KorapResult and KorapMatching
+
+0.05 2013-09-18
+        - Fixed bug in indexing (MultiTermTokenStream)
+	- Fixed SpanNext
+	- Added KorapIndex
+	- First draft for KorapFilter
+
+0.04 2013-09-01
+        - Introduced optimized SpanNext class (not working atm),
+	  as SpanNear does not always work with nested synonyms
+
+0.03 2013-08-28
+        - Added within query (not working atm)
+	- Pushed query part to public repo
+
+0.02 2013-08-26
+        - Added sequences
+
+0.01 2013-08-20
+        - First version as maven build environment
diff --git a/Changes.LOCAL.7786 b/Changes.LOCAL.7786
new file mode 100644
index 0000000..af767f1
--- /dev/null
+++ b/Changes.LOCAL.7786
@@ -0,0 +1,449 @@
+0.53 2015-09-25
+        - [feature] Implemented new KrillCollection (diewald)
+	  This should fix a lot of issues with deleted
+	  documents and negation in virtual collections.
+	- [cleanup] REMOVED deprecated collection filtering (diewald)
+	- [cleanup] REMOVED deprecated termRelation API (diewald)
+	- [feature] Added removal methods for documents (diewald)
+	- [cleanup] REMOVED search method in KrillCollection (diewald)
+        - [bugfix] Fixed collection statistics (diewald)
+	- [feature] Improved packaging (diewald)
+	- [feature] Introduced cmd options for server (diewald)
+    	- [feature] Return meta data on server-based indexation (diewald)
+
+0.52 2015-07-08
+        - [bugfix] Fixed payload filtering in FocusSpans (margaretha)
+	- [workaround] Reintroduced empty collection support,
+	  as Koral still creates them (diewald)
+	- [bugfix] Escaped characters now supported in MutiTerm (diewald)
+	- [feature] Deserialization of flags (diewald)
+	- [feature] Made responses valid KoralQueries (diewald)
+	- [bugfix] Fixed sequence deserialization bug for simple unordered
+	  constraint (diewald)
+	- [bugfix] Mirror collection (diewald)
+	- [bugfix] Updated default fields for meta data (diewald)
+	- [bugfix] Updated match identifier for "sigle" data (diewald)
+	- [workaround] Support corpusID/docID and textSigle match strings
+	  (diewald)
+	- [workaround] Support matches starting with "contains"
+	  (Kustvakt bug/diewald)
+	- [bugfix] Fixed treatment of several collection types (diewald)
+	- [bugfix] Remove legacy error handling in Match (diewald)
+	- [bugfix] JSON-serialization bug in match in case of
+	  error messages (diewald)
+	- [bugfix] 'fields' serialization (diewald)
+	- [bugfix] Deserialization of group:disjunction (diewald)
+	- [bugfix] Deserialization of wrapped spans (diewald)
+	- [bugfix] Fix KoralQuery mirroring in case of
+	  parsing failures (diewald)
+	- [feature] Support '@all' as a 'fields' value for all meta
+	  data fields (diewald)
+	- [bugfix] Fix case sensitivity bug in filters (diewald)
+	- [bugfix] Fix sentence expansion bug for new data (diewald)
+	- [bugfix] Deserialization of 'containsnot' instead of 'excludes'
+	  (diewald)
+
+0.51 2015-03-17
+        - 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)
+	- [bugfix] Updated AttributeSpans (margaretha)
+	- [bugfix] Updated SpanRelationQuery (margaretha)
+	- [cleanup] Autoformat (diewald)
+        - [documentation] References added to the Readme (diewald)
+	- [bugfix] Improved failing for missing property file (kupietz)
+	- [bugfix] Fixed tests for server responses to not use
+	  Jackson deserialization (diewald)
+	- [cleanup] No more jersey logging in tests (diewald)
+
+0.50.1 2015-03-02
+	- [feature] Deserialization of arbitrary elements with
+	  attributes (margaretha)
+	- [cleanup] Extracted KrillMeta from Krill,
+	  renamed KorapQuery to KrillQuery,
+	  extracted QueryBuilder from KrillQuery,
+	  renamed KorapIndexer to index/Indexer,
+	  renamed KorapDocument to model/AbstractDocument,
+	  renamed KorapMatch to response/Match,
+	  renamed KorapIndex to KrillIndex,
+	  renamed KorapCollection to KrillCollection,
+	  moved collector classes from index to response,
+	  renamed KorapDate to KrillDate,
+	  renamed KorapArray to KrillArray,
+	  renamed KorapByte to KrillByte,
+	  renamed KorapString to KrillString,
+	  moved KorapNode to server/Node,
+	  moved KorapResult to response/Result,
+	  renamed KorapResponse to Response,
+	  moved model/* to index,
+	  moved meta/SearchContext to response/SearchContext,
+	  krillified property files,
+	  added Errorcodes,
+	  removed KrillIndex#addDocFile (diewald)
+        - [documentation] Improved documentation for API classes (diewald)
+
+0.50 2015-02-23
+        - Project name is now "Krill"
+
+0.49.4 2015-02-20
+        - [documentation] Improved documentation for API classes (diewald)
+	- [cleanup] Improved test coverage for utility classes (diewald)
+   	- [performance] Updated Lucene dependency from 4.5.1 to 4.10.3,
+	  Updated Jackson dependency from 2.4.0 to 2.4.4,
+   	  Updated Jersey dependency from 2.4.1 to 2.15 (diewald)
+        - [feature] Presorting of element terms in the index for coherent
+	  SpanQuery sorting; Removed buffering of element candidates (diewald)
+	  Warning: This is a breaking change!
+	- [feature] Added CorpusDataException to deal with data importing bugs;
+          made some imports break more easily though (diewald)
+	- [performance] Payloads in ElementSpans can now be lazily loaded,
+	  MatchModifyClassSpans no longer rely on payload copies (diewald)
+	- [cleanup] Renamed /filter to /collection, 
+	  merge KorapHTML and KorapString,
+	  removed KorapSpan, KorapTermSpan and KorapLongSpan,
+	  renamed /analysis to /model,
+	  renamed shrink() to focus(),
+	  removed KorapPrimaryData,
+          fixed a lot of wrong tests for WithinSpans,
+	  renamed KorapFilter to /collection/CollectionBuilder,
+	  renamed SpanMatchModify to SpanFocus,
+	  changed KoralQuery root prefix to "koral",
+	  renamed different kinds of "queries" throughout classes,
+	  renamed KorapSearch#run to KorapSearch#apply (diewald)
+        - [feature] Improved deserialization of SpanSubSpanQueries
+          (margaretha)
+	- [feature] Introducing the potential need for resorting queries
+	  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)
+	- [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)
+	- [feature] Added deserialization of SpanSubSpanQueries
+          (margaretha, diewald)
+	- [bugfix] Null filters are now correctly extended (diewald)
+	- [cleanup] Refactoring of KorapResult, KorapResponse, KorapQuery,
+	  deprecated operation:or in favor of operation:junction,
+	  updating test suite for class and frame attributes (diewald)
+	- [bugfix] Empty class segments are now correctly serialized
+	  in sequences (diewald)
+	- [feature] Started support for position frames (diewald)
+	- [bugfix] Fixed #134 Nullpointer exception in WithinSpans
+	  (diewald, margaretha)
+
+0.49.2 2014-12-05
+	- [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,
+	  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)
+	- [bugfix] Class payload fixed in SpanRepetitions (margaretha)
+	- [bugfix] #179 Expansion bug fixed (margaretha)
+	- [bugfix] Corrected small bug where null warnings where
+	  returned in JSON (diewald)
+	- [cleanup] Converted error to failure (diewald)
+	- [bugfix] Added const layer rewrite (diewald)
+
+0.48 2014-11-07
+        - This is a major version (prepared for the "Tag der Offenen Tür")
+        - [feature] Retrieval of token lists (diewald)
+	- [bugfix] Classes can now be highlighted to 127.
+	- [bugfix] Sequences with distances won't be flattened in
+  	  SpanSequenceQueryWrapper (diewald)
+	- [bugfix] Sequences with [problem][problem][anchor] can now
+	  be deserialized (diewald)
+	- [bugfix] Queries with regular expressions in spanNext() are now
+	  correctly rewritten (diewald)
+	- [bugfix] Ignore foundry for orth layer (diewald)
+	- [feature] Support fields in meta (diewald)
+	- [workaround] Support more legacy APIs (diewald)
+	- [bugfix] Check for the existence of @type in JSON-LD groups
+	  to avoid NullPointer (diewald)
+	- [cleanup] Validated query and collection input - limited
+	  to a "don't break anyting" policy (diewald)
+
+0.47 2014-11-05
+        - [feature] Support new index format with more metadata (diewald)
+	- [bugfix] #142 Fixed class spans for skipTo() skips (margaretha)
+	- [feature] Added attribute support to relations (margaretha)
+	- [bugfix] Make classes and shrink default to 1 instead of 0 (diewald)
+	- [bugfix] shrink now removes all non-classes payloads (diewald)
+
+0.46 2014-10-21
+        - [feature] Support for relation queries (margaretha)
+	- [feature] Wrapping of extension queries
+	  (not completely tested yet; diewald)
+
+0.45 2014-10-06
+        - [bugfix] Correctly respond request in JSON results (diewald)
+        - [cleanup] Made SpanQueryWrapper an abstract class instead
+	  of an interface (diewald)
+
+0.44.1 2014-09-29
+        - [cleanup] Prepare test suite for publication (diewald)
+
+0.44 2014-09-28
+        - [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
+	  nest correctly (diewald)
+   	- [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)
+
+0.43 2014-09-23
+        - [cleanup] Made a lot of stuff rely on KorapResponse (diewald)
+	- [bugfix] Small but ancient collection bug fixed (diewald)
+	- [feature] Collect first matches of documents based on UIDs (diewald)
+
+0.42 2014-09-19
+        - [cleanup] Extracted private classes from KorapMatch (diewald)
+	- [bugfix] Fix query rewrite in contains-queries (diewald)
+
+0.41 2014-09-17
+        - [feature] getStartPos(classNr) and getEndPos(classNr)
+          in KorapMatch (diewald)
+        - [bugfix] SpanExpansionQuery with fixed Constructor
+	  and Exclusion handling (margaretha)
+        - [feature] Early implementation of match collector (diewald)
+
+0.40 2014-09-03
+        - [feature] Skeleton for standalone REST service (diewald)
+
+0.33 2014-09-01
+        - [feature] SpanSubspanQuery (margaretha)
+        - [feature] SpanExpansionQuery (margaretha)
+
+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)
+ 	- [performance] Some logging issues fixed (diewald)
+
+0.31.8 2014-07-24
+        - [feature] Added optionality to querys for quantifiers (diewald)
+        - [feature] Support for korap:boundary deserialization (diewald)
+
+0.31.7 2014-07-18
+        - [feature] Added warnings to responses (diewald)
+
+0.31.6 2014-06-30
+        - [feature] Support for korap:reference deserialization (diewald)
+	- [feature] Preliminary support for attributes in elements (margaretha)
+	- [feature] Preliminary support operation:repetition deserialization
+	  (unfinished and untested; diewald)
+
+0.31.5 2014-06-17
+        - [feature] Batch return of defined foundries and layers in
+	  getMatchInfo() (diewald)
+	- [security] Improve foundry and layer check before injection in
+	  regex (diewald)
+
+0.31.4 2014-06-16
+        - [feature] MatchModifyClassQuery now can extend (diewald)
+	- [bugfix] Make matchinfo a bit more robust (diewald)
+
+0.31.3 2014-06-11
+        - [bugfix] Minor bugfix regarding treatment of
+	  failed search results (diewald)
+
+0.31.2 2014-05-28
+        - [feature] Request parameter "itemsPerResource" limits
+	  hits per document (diewald)
+
+0.31.1 2014-05-21
+        - [bugfix] Minor bugfix for wrongly serialized contexts
+	  in responses (diewald)
+
+0.31.0 2014-05-20
+        - [feature] span contexts in JSON-LD are now supported
+        - [bugfix] Multiple bugfixes regarding span context
+          extensions (diewald)
+        - [bugfix] Minor debugging bugs (diewald)
+
+0.30.9 2014-04-11
+        - [bugfix] Prevent multiple identifiers in
+	  relation highlighting (diewald)
+
+0.30.8 2014-04-10
+        - Added getTermRelationJSON() to KorapCollection (diewald)
+	  This is likely to get deprecated!
+
+0.30.7 2014-04-09
+        - Moved JSON interpretation from BooleanFilter to KorapFilter (diewald)
+	- Added 'or' and group nesting to KorapFilter (diewald)
+
+0.30.6 2014-03-20
+        - Refactoring and cleaning of ElementSpans (diewald)
+	- [bugfix] Stabilizing KorapMatch (diewald)
+
+0.30.5 2014-03-18
+	- Support for Quantifier Queries (margaretha)
+	- Some benchmarks (margaretha)
+        - [bugfix] WithinSpans respect match payloads,
+	  and are now way more correct ;) (diewald)
+	- Support for overlap queries (diewald)
+	- Refactoring of WithinSpans (diewald)
+	- Introducing lazy loading for wrapper .end() in WithinSpans (diewald)
+
+0.30.4 2014-02-26
+        - [cleanup] Making MultiTerm* more robust (diewald)
+
+0.30.3 2014-02-20
+        - Return json request in response if given (diewald)
+	- [bugfix] ClassSpans and WithinSpans check skipTo
+	  in advance now (diewald)
+	- Compilerfriendly logging rules, resulting
+	  in significant performance improvements (diewald)
+	- Small refactorings (diewald)
+
+0.30.2 2014-02-14
+        - [bugfix] wrapper uses correct distance constraint (diewald)
+
+0.30.1 2014-02-13
+        - 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)
+	- Improved stringification for distance queries (margaretha)
+
+0.26.4 2014-02-12
+        - Serialize SpanDistanceQueries and SpanMultipleDistanceQueries
+          (diewald)
+	- [temporarily] Added default foundry "mate" in KorapQuery (diewald)
+
+0.26.3 2014-02-12
+        - [bugfix] Only open writer in case it's needed (diewald)
+
+0.26.2 2014-02-12
+        - Added sequence queries with defined gaps (margaretha)
+	- Support for multiple distance constraints (margaretha)
+	- Updated json-ld deserialization with nested meta (diewald)
+	- [bugfix] Wildcards in segments were ignored (diewald)
+
+0.26.1 2014-01-21
+        - Distinct Match retrieval including spans
+	  and dependency relations (diewald)
+
+0.26 2014-01-16
+        - Introduced standalone SpanSegmentQueries (margaretha)
+        - [bugfix] SpanNextQueries (margaretha)
+	- Support for Match Identifiers (diewald)
+	- Support for distinct Match retrieval (diewald)
+
+0.25.3 2014-01-10
+        - Updated Lucene to 4.3.1 (diewald)
+	- Welcome! Eliza Margaretha has joined the team!
+
+0.25.2 2013-12-29
+        - Fixed highlight bug with empty reopened tags
+
+0.25.1 2013-12-28
+        - Support for pubDate collections
+	- Changed versioning scheme
+
+0.25 2013-12-20
+        - Support for Wildcard Queries
+	- Improved support for regular expressions
+	- Introduced keyword fields that store no positions
+
+0.24_1 2013-12-05
+        - This is a pseudo version for demo versions with dirty hacks,
+	  meant to be rolled back!
+	- There is now an ignored broken test in TestKorapCollection
+
+0.24 2013-12-05
+        - Json deserializer finished for virtual collections
+
+0.23 2013-12-05
+        - Error handling corrected in KorapResult
+	- Json deserializer finished for queries
+
+0.22 2013-12-04
+        - Introduced KorapSearch
+	- Json deserializer (started)
+
+0.21 2013-11-28
+        - Virtual collections can now be defined,
+	  searched, nested and extended
+
+0.20 2013-11-18
+        - Unboxing from sandbox repository
+
+0.11 2013-11-14
+	- JSON file importer (plain and gzip)
+	- [bugfix] Element Query
+	- [bugfix] Sequence Query
+
+0.10 2013-11-11
+        - Added JSON input to indexer
+
+0.09 2013-11-07
+        - Reconstruction of all wrapper queries using an interface
+	- Finished KorapQuery (preliminary feature freeze)
+
+0.08 2013-10-18
+        - Changed methods to attributes in KorapMatch
+	- Changed SimpleJSON to Jackson
+	- Fixed Highlighting
+	- Some Refactoring of result classes
+	- Introduced KorapDocument
+	- Introduced KorapHTML utility
+
+0.07 2013-10-14
+        - Added position to offset matching
+
+0.06 2013-10-01
+        - Added SpanElementQuery for working WithinQeries
+	- Added KorapResult and KorapMatching
+
+0.05 2013-09-18
+        - Fixed bug in indexing (MultiTermTokenStream)
+	- Fixed SpanNext
+	- Added KorapIndex
+	- First draft for KorapFilter
+
+0.04 2013-09-01
+        - Introduced optimized SpanNext class (not working atm),
+	  as SpanNear does not always work with nested synonyms
+
+0.03 2013-08-28
+        - Added within query (not working atm)
+	- Pushed query part to public repo
+
+0.02 2013-08-26
+        - Added sequences
+
+0.01 2013-08-20
+        - First version as maven build environment
diff --git a/Changes.REMOTE.7786 b/Changes.REMOTE.7786
new file mode 100644
index 0000000..558710c
--- /dev/null
+++ b/Changes.REMOTE.7786
@@ -0,0 +1,455 @@
+0.54 2015-09-30
+   	- [performance] Updated Lucene dependency from 4.10.3
+	  to 5.0.0 (diewald)
+        - [bugfix] Minor fixes regarding invalid tokens in the
+	  test suite (diewald)
+
+0.53 2015-09-25
+        - [feature] Implemented new KrillCollection (diewald)
+	  This should fix a lot of issues with deleted
+	  documents and negation in virtual collections.
+	- [cleanup] REMOVED deprecated collection filtering (diewald)
+	- [cleanup] REMOVED deprecated termRelation API (diewald)
+	- [feature] Added removal methods for documents (diewald)
+	- [cleanup] REMOVED search method in KrillCollection (diewald)
+        - [bugfix] Fixed collection statistics (diewald)
+	- [feature] Improved packaging (diewald)
+	- [feature] Introduced cmd options for server (diewald)
+    	- [feature] Return meta data on server-based indexation (diewald)
+
+0.52 2015-07-08
+        - [bugfix] Fixed payload filtering in FocusSpans (margaretha)
+	- [workaround] Reintroduced empty collection support,
+	  as Koral still creates them (diewald)
+	- [bugfix] Escaped characters now supported in MutiTerm (diewald)
+	- [feature] Deserialization of flags (diewald)
+	- [feature] Made responses valid KoralQueries (diewald)
+	- [bugfix] Fixed sequence deserialization bug for simple unordered
+	  constraint (diewald)
+	- [bugfix] Mirror collection (diewald)
+	- [bugfix] Updated default fields for meta data (diewald)
+	- [bugfix] Updated match identifier for "sigle" data (diewald)
+	- [workaround] Support corpusID/docID and textSigle match strings
+	  (diewald)
+	- [workaround] Support matches starting with "contains"
+	  (Kustvakt bug/diewald)
+	- [bugfix] Fixed treatment of several collection types (diewald)
+	- [bugfix] Remove legacy error handling in Match (diewald)
+	- [bugfix] JSON-serialization bug in match in case of
+	  error messages (diewald)
+	- [bugfix] 'fields' serialization (diewald)
+	- [bugfix] Deserialization of group:disjunction (diewald)
+	- [bugfix] Deserialization of wrapped spans (diewald)
+	- [bugfix] Fix KoralQuery mirroring in case of
+	  parsing failures (diewald)
+	- [feature] Support '@all' as a 'fields' value for all meta
+	  data fields (diewald)
+	- [bugfix] Fix case sensitivity bug in filters (diewald)
+	- [bugfix] Fix sentence expansion bug for new data (diewald)
+	- [bugfix] Deserialization of 'containsnot' instead of 'excludes'
+	  (diewald)
+
+0.51 2015-03-17
+        - 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)
+	- [bugfix] Updated AttributeSpans (margaretha)
+	- [bugfix] Updated SpanRelationQuery (margaretha)
+	- [cleanup] Autoformat (diewald)
+        - [documentation] References added to the Readme (diewald)
+	- [bugfix] Improved failing for missing property file (kupietz)
+	- [bugfix] Fixed tests for server responses to not use
+	  Jackson deserialization (diewald)
+	- [cleanup] No more jersey logging in tests (diewald)
+
+0.50.1 2015-03-02
+	- [feature] Deserialization of arbitrary elements with
+	  attributes (margaretha)
+	- [cleanup] Extracted KrillMeta from Krill,
+	  renamed KorapQuery to KrillQuery,
+	  extracted QueryBuilder from KrillQuery,
+	  renamed KorapIndexer to index/Indexer,
+	  renamed KorapDocument to model/AbstractDocument,
+	  renamed KorapMatch to response/Match,
+	  renamed KorapIndex to KrillIndex,
+	  renamed KorapCollection to KrillCollection,
+	  moved collector classes from index to response,
+	  renamed KorapDate to KrillDate,
+	  renamed KorapArray to KrillArray,
+	  renamed KorapByte to KrillByte,
+	  renamed KorapString to KrillString,
+	  moved KorapNode to server/Node,
+	  moved KorapResult to response/Result,
+	  renamed KorapResponse to Response,
+	  moved model/* to index,
+	  moved meta/SearchContext to response/SearchContext,
+	  krillified property files,
+	  added Errorcodes,
+	  removed KrillIndex#addDocFile (diewald)
+        - [documentation] Improved documentation for API classes (diewald)
+
+0.50 2015-02-23
+        - Project name is now "Krill"
+
+0.49.4 2015-02-20
+        - [documentation] Improved documentation for API classes (diewald)
+	- [cleanup] Improved test coverage for utility classes (diewald)
+   	- [performance] Updated Lucene dependency from 4.5.1 to 4.10.3,
+	  Updated Jackson dependency from 2.4.0 to 2.4.4,
+   	  Updated Jersey dependency from 2.4.1 to 2.15 (diewald)
+        - [feature] Presorting of element terms in the index for coherent
+	  SpanQuery sorting; Removed buffering of element candidates (diewald)
+	  Warning: This is a breaking change!
+	- [feature] Added CorpusDataException to deal with data importing bugs;
+          made some imports break more easily though (diewald)
+	- [performance] Payloads in ElementSpans can now be lazily loaded,
+	  MatchModifyClassSpans no longer rely on payload copies (diewald)
+	- [cleanup] Renamed /filter to /collection, 
+	  merge KorapHTML and KorapString,
+	  removed KorapSpan, KorapTermSpan and KorapLongSpan,
+	  renamed /analysis to /model,
+	  renamed shrink() to focus(),
+	  removed KorapPrimaryData,
+          fixed a lot of wrong tests for WithinSpans,
+	  renamed KorapFilter to /collection/CollectionBuilder,
+	  renamed SpanMatchModify to SpanFocus,
+	  changed KoralQuery root prefix to "koral",
+	  renamed different kinds of "queries" throughout classes,
+	  renamed KorapSearch#run to KorapSearch#apply (diewald)
+        - [feature] Improved deserialization of SpanSubSpanQueries
+          (margaretha)
+	- [feature] Introducing the potential need for resorting queries
+	  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)
+	- [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)
+	- [feature] Added deserialization of SpanSubSpanQueries
+          (margaretha, diewald)
+	- [bugfix] Null filters are now correctly extended (diewald)
+	- [cleanup] Refactoring of KorapResult, KorapResponse, KorapQuery,
+	  deprecated operation:or in favor of operation:junction,
+	  updating test suite for class and frame attributes (diewald)
+	- [bugfix] Empty class segments are now correctly serialized
+	  in sequences (diewald)
+	- [feature] Started support for position frames (diewald)
+	- [bugfix] Fixed #134 Nullpointer exception in WithinSpans
+	  (diewald, margaretha)
+
+0.49.2 2014-12-05
+	- [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,
+	  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)
+	- [bugfix] Class payload fixed in SpanRepetitions (margaretha)
+	- [bugfix] #179 Expansion bug fixed (margaretha)
+	- [bugfix] Corrected small bug where null warnings where
+	  returned in JSON (diewald)
+	- [cleanup] Converted error to failure (diewald)
+	- [bugfix] Added const layer rewrite (diewald)
+
+0.48 2014-11-07
+        - This is a major version (prepared for the "Tag der Offenen Tür")
+        - [feature] Retrieval of token lists (diewald)
+	- [bugfix] Classes can now be highlighted to 127.
+	- [bugfix] Sequences with distances won't be flattened in
+  	  SpanSequenceQueryWrapper (diewald)
+	- [bugfix] Sequences with [problem][problem][anchor] can now
+	  be deserialized (diewald)
+	- [bugfix] Queries with regular expressions in spanNext() are now
+	  correctly rewritten (diewald)
+	- [bugfix] Ignore foundry for orth layer (diewald)
+	- [feature] Support fields in meta (diewald)
+	- [workaround] Support more legacy APIs (diewald)
+	- [bugfix] Check for the existence of @type in JSON-LD groups
+	  to avoid NullPointer (diewald)
+	- [cleanup] Validated query and collection input - limited
+	  to a "don't break anyting" policy (diewald)
+
+0.47 2014-11-05
+        - [feature] Support new index format with more metadata (diewald)
+	- [bugfix] #142 Fixed class spans for skipTo() skips (margaretha)
+	- [feature] Added attribute support to relations (margaretha)
+	- [bugfix] Make classes and shrink default to 1 instead of 0 (diewald)
+	- [bugfix] shrink now removes all non-classes payloads (diewald)
+
+0.46 2014-10-21
+        - [feature] Support for relation queries (margaretha)
+	- [feature] Wrapping of extension queries
+	  (not completely tested yet; diewald)
+
+0.45 2014-10-06
+        - [bugfix] Correctly respond request in JSON results (diewald)
+        - [cleanup] Made SpanQueryWrapper an abstract class instead
+	  of an interface (diewald)
+
+0.44.1 2014-09-29
+        - [cleanup] Prepare test suite for publication (diewald)
+
+0.44 2014-09-28
+        - [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
+	  nest correctly (diewald)
+   	- [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)
+
+0.43 2014-09-23
+        - [cleanup] Made a lot of stuff rely on KorapResponse (diewald)
+	- [bugfix] Small but ancient collection bug fixed (diewald)
+	- [feature] Collect first matches of documents based on UIDs (diewald)
+
+0.42 2014-09-19
+        - [cleanup] Extracted private classes from KorapMatch (diewald)
+	- [bugfix] Fix query rewrite in contains-queries (diewald)
+
+0.41 2014-09-17
+        - [feature] getStartPos(classNr) and getEndPos(classNr)
+          in KorapMatch (diewald)
+        - [bugfix] SpanExpansionQuery with fixed Constructor
+	  and Exclusion handling (margaretha)
+        - [feature] Early implementation of match collector (diewald)
+
+0.40 2014-09-03
+        - [feature] Skeleton for standalone REST service (diewald)
+
+0.33 2014-09-01
+        - [feature] SpanSubspanQuery (margaretha)
+        - [feature] SpanExpansionQuery (margaretha)
+
+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)
+ 	- [performance] Some logging issues fixed (diewald)
+
+0.31.8 2014-07-24
+        - [feature] Added optionality to querys for quantifiers (diewald)
+        - [feature] Support for korap:boundary deserialization (diewald)
+
+0.31.7 2014-07-18
+        - [feature] Added warnings to responses (diewald)
+
+0.31.6 2014-06-30
+        - [feature] Support for korap:reference deserialization (diewald)
+	- [feature] Preliminary support for attributes in elements (margaretha)
+	- [feature] Preliminary support operation:repetition deserialization
+	  (unfinished and untested; diewald)
+
+0.31.5 2014-06-17
+        - [feature] Batch return of defined foundries and layers in
+	  getMatchInfo() (diewald)
+	- [security] Improve foundry and layer check before injection in
+	  regex (diewald)
+
+0.31.4 2014-06-16
+        - [feature] MatchModifyClassQuery now can extend (diewald)
+	- [bugfix] Make matchinfo a bit more robust (diewald)
+
+0.31.3 2014-06-11
+        - [bugfix] Minor bugfix regarding treatment of
+	  failed search results (diewald)
+
+0.31.2 2014-05-28
+        - [feature] Request parameter "itemsPerResource" limits
+	  hits per document (diewald)
+
+0.31.1 2014-05-21
+        - [bugfix] Minor bugfix for wrongly serialized contexts
+	  in responses (diewald)
+
+0.31.0 2014-05-20
+        - [feature] span contexts in JSON-LD are now supported
+        - [bugfix] Multiple bugfixes regarding span context
+          extensions (diewald)
+        - [bugfix] Minor debugging bugs (diewald)
+
+0.30.9 2014-04-11
+        - [bugfix] Prevent multiple identifiers in
+	  relation highlighting (diewald)
+
+0.30.8 2014-04-10
+        - Added getTermRelationJSON() to KorapCollection (diewald)
+	  This is likely to get deprecated!
+
+0.30.7 2014-04-09
+        - Moved JSON interpretation from BooleanFilter to KorapFilter (diewald)
+	- Added 'or' and group nesting to KorapFilter (diewald)
+
+0.30.6 2014-03-20
+        - Refactoring and cleaning of ElementSpans (diewald)
+	- [bugfix] Stabilizing KorapMatch (diewald)
+
+0.30.5 2014-03-18
+	- Support for Quantifier Queries (margaretha)
+	- Some benchmarks (margaretha)
+        - [bugfix] WithinSpans respect match payloads,
+	  and are now way more correct ;) (diewald)
+	- Support for overlap queries (diewald)
+	- Refactoring of WithinSpans (diewald)
+	- Introducing lazy loading for wrapper .end() in WithinSpans (diewald)
+
+0.30.4 2014-02-26
+        - [cleanup] Making MultiTerm* more robust (diewald)
+
+0.30.3 2014-02-20
+        - Return json request in response if given (diewald)
+	- [bugfix] ClassSpans and WithinSpans check skipTo
+	  in advance now (diewald)
+	- Compilerfriendly logging rules, resulting
+	  in significant performance improvements (diewald)
+	- Small refactorings (diewald)
+
+0.30.2 2014-02-14
+        - [bugfix] wrapper uses correct distance constraint (diewald)
+
+0.30.1 2014-02-13
+        - 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)
+	- Improved stringification for distance queries (margaretha)
+
+0.26.4 2014-02-12
+        - Serialize SpanDistanceQueries and SpanMultipleDistanceQueries
+          (diewald)
+	- [temporarily] Added default foundry "mate" in KorapQuery (diewald)
+
+0.26.3 2014-02-12
+        - [bugfix] Only open writer in case it's needed (diewald)
+
+0.26.2 2014-02-12
+        - Added sequence queries with defined gaps (margaretha)
+	- Support for multiple distance constraints (margaretha)
+	- Updated json-ld deserialization with nested meta (diewald)
+	- [bugfix] Wildcards in segments were ignored (diewald)
+
+0.26.1 2014-01-21
+        - Distinct Match retrieval including spans
+	  and dependency relations (diewald)
+
+0.26 2014-01-16
+        - Introduced standalone SpanSegmentQueries (margaretha)
+        - [bugfix] SpanNextQueries (margaretha)
+	- Support for Match Identifiers (diewald)
+	- Support for distinct Match retrieval (diewald)
+
+0.25.3 2014-01-10
+        - Updated Lucene to 4.3.1 (diewald)
+	- Welcome! Eliza Margaretha has joined the team!
+
+0.25.2 2013-12-29
+        - Fixed highlight bug with empty reopened tags
+
+0.25.1 2013-12-28
+        - Support for pubDate collections
+	- Changed versioning scheme
+
+0.25 2013-12-20
+        - Support for Wildcard Queries
+	- Improved support for regular expressions
+	- Introduced keyword fields that store no positions
+
+0.24_1 2013-12-05
+        - This is a pseudo version for demo versions with dirty hacks,
+	  meant to be rolled back!
+	- There is now an ignored broken test in TestKorapCollection
+
+0.24 2013-12-05
+        - Json deserializer finished for virtual collections
+
+0.23 2013-12-05
+        - Error handling corrected in KorapResult
+	- Json deserializer finished for queries
+
+0.22 2013-12-04
+        - Introduced KorapSearch
+	- Json deserializer (started)
+
+0.21 2013-11-28
+        - Virtual collections can now be defined,
+	  searched, nested and extended
+
+0.20 2013-11-18
+        - Unboxing from sandbox repository
+
+0.11 2013-11-14
+	- JSON file importer (plain and gzip)
+	- [bugfix] Element Query
+	- [bugfix] Sequence Query
+
+0.10 2013-11-11
+        - Added JSON input to indexer
+
+0.09 2013-11-07
+        - Reconstruction of all wrapper queries using an interface
+	- Finished KorapQuery (preliminary feature freeze)
+
+0.08 2013-10-18
+        - Changed methods to attributes in KorapMatch
+	- Changed SimpleJSON to Jackson
+	- Fixed Highlighting
+	- Some Refactoring of result classes
+	- Introduced KorapDocument
+	- Introduced KorapHTML utility
+
+0.07 2013-10-14
+        - Added position to offset matching
+
+0.06 2013-10-01
+        - Added SpanElementQuery for working WithinQeries
+	- Added KorapResult and KorapMatching
+
+0.05 2013-09-18
+        - Fixed bug in indexing (MultiTermTokenStream)
+	- Fixed SpanNext
+	- Added KorapIndex
+	- First draft for KorapFilter
+
+0.04 2013-09-01
+        - Introduced optimized SpanNext class (not working atm),
+	  as SpanNear does not always work with nested synonyms
+
+0.03 2013-08-28
+        - Added within query (not working atm)
+	- Pushed query part to public repo
+
+0.02 2013-08-26
+        - Added sequences
+
+0.01 2013-08-20
+        - First version as maven build environment
