Add 2 overloads of Erase() for removing elements of array.
Add equal-to and non-equal-to operators
Add Erase(ConstValueIterator) and Erase(ConstValueIterator,ConstValueIterator)

As std::vector::erase() overloads added in C++11
Revert "Add Erase(ConstValueIterator) and Erase(ConstValueIterator,ConstValueIterator)"

This reverts commit 9ab2621e855a9abb8377520b42d6dfddcd49a8e1.
fix typo
GenericValue: document Array iterator functions
GenericValue: improve Erase documentation
GenericValue::Erase: pass ConstValueIterators
GenericValue: use generated assignment/destructor for GenericMember
GenericValue: add Erase function for object members
GenericValue: add tests for Erase(ConstMemberIterator[, ConstMemberIterator])
fix missing bracket
Makes `StringEqual()` more safe by always compares lengths.
GenericValue: rename Erase(ConstMemberIterator) to EraseMember
Merge pull request #92 from pah/issue91removeelement

Remove for object members, some cleanups for values
Update documents about erase member/elements, also added some time complexity information.
Fixes size type in Value::operator==()
Try to add erase-remove idiom in unit test but fail to compile on VC2013.
Merge pull request #96 from miloyip/issue91removeelement

Fix #91