Add parse error codes and API for converting error code to text.

Parse errors is represented as enum type `ParseErrorCode`.
Error texts are optional for user.
Added  `GetParseError_En()` in `error/en.h`, user can localize this file
into other files. User may dynamically change the locale in runtime.
Fixes grammar mistakes in error messages.
Verify all error codes in unit tests of parsing.
fix build on travis-ci.org

Some early returns were missing after the removal of longjmp in #22.
This has led to segfaults on Linux (confirmed locally).
document.h: avoid casting away const

Another instance of casting away constness via C-style cast
has been missed (introduced by #20).
Merge pull request #26 from pah/fixes/errorreturn-castqual

Fix segfault and build error on Linux
Error can only be assigned once
Manually merge the segfault fix from main branch and fix several unit tests about error code
Documentation on error related files and include dependent header.
Added a simple example and a diagram showing the process.
Update readme.md

Fixes image path
Fixes comment mistakes
Minor adjustment to simpledom example

Showing the type Value and preventing member lookup twice.
Added overloaded functions for default parseFlags

Can write d.Parse(...) instead of d.Parse<0>(...)
Hope to reduce strangeness and confusion for beginner.
Create features.md
Update features.md
Update readme.md
Update features.md
Update features.md
Merge pull request #29 from miloyip/DefaultFlag

Added overloaded functions for default parseFlags