Separate DocumentBuilder from DocumentCollection.Builder

make Document immutable
Separate DocumentBuilder from DocumentCollection.Builder
introduce RedPen#validate(Document)