Made grammar reader a concrete class as people wont really make their own. Reduced visibility of Pegex constructor as we have a factory to create instances.
Implemented tests around GrammarReader to ensure it was constructed with a valid GrammarSource
Implemented tests around GrammarReader to ensure it was constructed with a valid GrammarSource. Refectored text for valid grammar source.
Refactored validation in constructor.