Added some JavaDocs to API classes
diff --git a/src/test/java/de/ids_mannheim/korap/index/TestKorapDocument.java b/src/test/java/de/ids_mannheim/korap/index/TestKorapDocument.java
new file mode 100644
index 0000000..ed38e70
--- /dev/null
+++ b/src/test/java/de/ids_mannheim/korap/index/TestKorapDocument.java
@@ -0,0 +1,141 @@
+package de.ids_mannheim.korap.index;
+
+import java.util.*;
+import java.io.*;
+
+// This may be better in a model subdirectory
+
+import org.apache.lucene.util.Version;
+import org.apache.lucene.util.BytesRef;
+import org.apache.lucene.util.Bits;
+
+import static org.junit.Assert.*;
+import org.junit.Test;
+import org.junit.Ignore;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+import de.ids_mannheim.korap.KorapDocument;
+
+@RunWith(JUnit4.class)
+public class TestKorapDocument {
+
+    private class KorapRealDocument extends KorapDocument {};
+
+    @Test
+    public void createDocument () throws IOException {
+        KorapRealDocument krd = new KorapRealDocument();
+        krd.setPubDate("2014-10-12");
+        assertEquals("20141012", krd.getPubDate().toString());
+        assertEquals("2014-10-12", krd.getPubDateString());
+
+        krd.setCreationDate("2012-09-05");
+        assertEquals("20120905", krd.getCreationDate().toString());
+        assertEquals("2012-09-05", krd.getCreationDateString());
+
+        krd.setAuthor("Stephen King");
+        assertEquals("Stephen King", krd.getAuthor());
+
+        krd.setPubPlace("Düsseldorf");
+        assertEquals("Düsseldorf", krd.getPubPlace());
+
+        krd.setUID(415);
+        assertEquals(415, krd.getUID());
+
+        krd.setUID("561");
+        assertEquals(561, krd.getUID());
+
+        try {
+            krd.setUID("zzz");
+        }
+        catch (NumberFormatException e) {
+        };
+        assertEquals(561, krd.getUID());
+
+        krd.setTitle("An Example");
+        assertEquals("An Example", krd.getTitle());
+
+        krd.setSubTitle("An Example");
+        assertEquals("An Example", krd.getSubTitle());
+
+        krd.setPrimaryData("We don't need no education");
+        assertEquals("We don't need no education", krd.getPrimaryData());
+        assertEquals("don't need no education", krd.getPrimaryData(3));
+        assertEquals("do", krd.getPrimaryData(3,5));
+        assertEquals(26, krd.getPrimaryDataLength());
+
+        krd.setPrimaryData("abc");
+        assertEquals(3, krd.getPrimaryDataLength());
+        krd.setPrimaryData("öäüß");
+        assertEquals(4, krd.getPrimaryDataLength());
+
+        krd.setTextSigle("U-abc-001");
+        assertEquals("U-abc-001", krd.getTextSigle());
+
+        krd.setDocSigle("U-abc");
+        assertEquals("U-abc", krd.getDocSigle());
+
+        krd.setCorpusSigle("U");
+        assertEquals("U", krd.getCorpusSigle());
+
+        krd.setPublisher("Pope Francis");
+        assertEquals("Pope Francis", krd.getPublisher());
+
+        krd.setEditor("Michael Knight");
+        assertEquals("Michael Knight", krd.getEditor());
+
+        krd.setTextType("shortstory");
+        assertEquals("shortstory", krd.getTextType());
+
+        krd.setTextTypeArt("Reportage");
+        assertEquals("Reportage", krd.getTextTypeArt());
+
+        krd.setTextTypeRef("Hm");
+        assertEquals("Hm", krd.getTextTypeRef());
+
+        krd.setTextColumn("Feuilleton");
+        assertEquals("Feuilleton", krd.getTextColumn());
+
+        krd.setTextDomain("Comment");
+        assertEquals("Comment", krd.getTextDomain());
+
+        krd.setLicense("cc");
+        assertEquals("cc", krd.getLicense());
+
+        krd.setPages("56-78");
+        assertEquals("56-78", krd.getPages());
+
+        krd.setFileEditionStatement("no problemo 1");
+        assertEquals("no problemo 1", krd.getFileEditionStatement());
+
+        krd.setBiblEditionStatement("no problemo 2");
+        assertEquals("no problemo 2", krd.getBiblEditionStatement());
+
+        krd.setLanguage("de");
+        assertEquals("de", krd.getLanguage());
+
+        krd.setCorpusTitle("Mannheimer Morgen");
+        assertEquals("Mannheimer Morgen", krd.getCorpusTitle());
+
+        krd.setCorpusSubTitle("Zeitung für Mannheim");
+        assertEquals("Zeitung für Mannheim", krd.getCorpusSubTitle());
+
+        krd.setCorpusAuthor("Peter Gabriel");
+        assertEquals("Peter Gabriel", krd.getCorpusAuthor());
+
+        krd.setCorpusEditor("Phil Collins");
+        assertEquals("Phil Collins", krd.getCorpusEditor());
+
+        krd.setDocTitle("New York Times");
+        assertEquals("New York Times", krd.getDocTitle());
+
+        krd.setDocSubTitle("Newspaper for New York");
+        assertEquals("Newspaper for New York", krd.getDocSubTitle());
+
+        krd.setDocAuthor("Dean Baquet");
+        assertEquals("Dean Baquet", krd.getDocAuthor());
+
+        krd.setDocEditor("Arthur Ochs Sulzberger Jr.");
+        assertEquals("Arthur Ochs Sulzberger Jr.", krd.getDocEditor());
+    };
+};
diff --git a/src/test/java/de/ids_mannheim/korap/response/TestResponse.java b/src/test/java/de/ids_mannheim/korap/response/TestResponse.java
index 43686f0..2ec3345 100644
--- a/src/test/java/de/ids_mannheim/korap/response/TestResponse.java
+++ b/src/test/java/de/ids_mannheim/korap/response/TestResponse.java
@@ -131,18 +131,25 @@
         assertTrue(kresp.hasTimeExceeded());
         assertTrue(kresp.hasWarnings());
 
-
         jsonResponse = "{\"warnings\":[[123,\"This is a warning\"]," +
             "[124,\"This is a second warning\"]],"+
-            "\"error\":[[125,\"This is a single error\"]], "+
+            "\"errors\":[[125,\"This is a single error\"]], "+
             " \"node\":\"tanja\", \"version\":\"seaweed-0.49\", " +
             " \"benchmark\":\"40.5s\",  \"listener\":\"10.0.10.14:678\"," +
             "\"timeExceeded\":true }";
         kresp = mapper.readValue(jsonResponse, KorapResponse.class);
-
-        /*
-{,"version":"seaweed-0.49","timeExceeded":true,"node":"tanja","listener":"10.0.10.14:678","benchmark":"40.5s"}
-        */
-        // System.err.println(kresp.toJsonString());
+        assertTrue(kresp.hasWarnings());
+        assertTrue(kresp.hasErrors());
+        assertFalse(kresp.hasMessages());
+        assertEquals(kresp.getError(0).getMessage(), "This is a single error");
+        assertEquals(kresp.getWarning(0).getMessage(), "Response time exceeded");
+        assertEquals(kresp.getWarning(1).getMessage(), "This is a warning");
+        assertEquals(kresp.getWarning(2).getMessage(), "This is a second warning");
+        assertEquals("0.49", kresp.getVersion());
+        assertEquals("seaweed", kresp.getName());
+        assertEquals("40.5s", kresp.getBenchmark());
+        assertEquals("10.0.10.14:678", kresp.getListener());
+        assertEquals("tanja", kresp.getNode());
+        assertTrue(kresp.hasTimeExceeded());
     };
 };