Try to resolve issue #35: implement iterative parsing.
Rename flags/state names/functions/test cases from 'NonRecursive' to 'Iterative'.
Bugfix: add missing transition from finish state.
It is sufficient to check finish state in iterative parsing.
WIP: refactor iterative parsing.
Finish the new implementation of state machine. But not been unittested.
Add basic error handling.
Handle all unspecific parsing errors.
Add unittests for state transition.
Add two basic performance tests.
Complete unittests for state transition.
Merge remote-tracking branch 'upstream/master' into TransitionTable
Revise unittests: reset the handler before the transition which we are going to test.
Revise unittests of compound value(array or object)'s initial state transition.
Fixes #66 by adding Writer::Reset() and multiple root check

Note it redefines RAPIDJSON_ASSERT() to throw exception in unittest and
check for assertion with gtest.
Add Writer::IsComplete()
Add API doc for Writer::Reset() and Writer::IsComplete()
Minor update of SAX doc,  add about IsComplete() and Reset()
Add ASCII encoding which can fulfill #69
Fixes missing supportUnicode in AutoUTF