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()
Add ASCII encoding which can fulfill #69
Fixes missing supportUnicode in AutoUTF
Do not assume little endian when detection fail, add more detections
More endian detection

Since __BYTE_ORDER__ only avaliable since GCC 4.6.0, add more detection.
Merge pull request #67 from miloyip/issue66writerassertion

Fix #66 by adding Writer::Reset() and Writer::IsComplete()
Merge pull request #74 from miloyip/issue71endianness

Improves endian detection
Merge conflicts and suppress VC warnings
Merge branch 'issue69writeescapeunicode'
Add encoding documentation
Add missing hash tags
Minor update to encoding documentation
Fixes example code in encoding
Merge remote-tracking branch 'upstream/master' into TransitionTable