drop trailing commas in enums

In C++'98/03, trailing commas in enumerations are not allowed, but have
been introduced in C++11.  This patch drops the trailing commas in order
to avoid compiler warnings (e.g. GCC with -pedantic).

Fixes http://code.google.com/p/rapidjson/issues/detail?id=49.
GenericValue: fixup construction from NumberType

Constructing an empty GenericValue with a specific Type has failed
for any kNumberType (Int, Int64, Double...) due to incomplete definition
of the corresponding default flag value.

This patch adds a new constant kNumberAnyFlag to the flags enumeration
in GenericValue to cover this case.

This fixes http://code.google.com/p/rapidjson/issues/detail?id=57
GenericValue: explicit constructors

In case of overloaded functions taking either a GenericValue or another
class that can also be constructed from the same primitive types
(e.g. std::string, which can be constructed from const char*), the
overloading becomes ambiguous:

  void foo( const std::string& );
  void foo( const rapidjson::Value & );

Declaring the GenericValue constructors taking primitive types as
'explicit' avoids this problem.  This should not have any negative
side-effects, since a GenericValue can't be copied or implicitly
converted to other types.

Fixes http://code.google.com/p/rapidjson/issues/detail?id=70.
GenericDocument: forward allocator to GenericReader

Fixes http://code.google.com/p/rapidjson/issues/detail?id=72.
GenericDocument::ParseStream: make SourceEncoding optional

The ParseStream() function current requires explicitly passing
the SourceEncoding parameter as explicit template argument
while the other Parse*() functions provide overloads to omit
this parameter and use the document's own encoding by default.

This patch adds the corresponding overload for ParseStream(),
enabling the simple usage again:

  rapidjson::FileStream is(fp);
  rapidjson::Document   d;
  d.ParseStream<0>(is);
GenericValue/GenericDocument: fix alloctaor/Alloactor typos

This patch fixes some misspellings of "allocator" in document.h.
Fixes the Doxygen documentation of GenericDocument as well.
MemoryPoolAllocator: prohibit copying and assignment

The MemoryPoolAllocator implementation cannot and should not be
copied (Rule of Three).  Declare copy constructor and copy-assignment
operator as private.
FileStream: avoid warning about missing initialisation

FileStream::current_ is now explicitly initialized in the constructor.
Avoids reading the garbage value in case of an empty file.
Fixed some clang -Weverything warnings.
Merge pull request #9 from pah/fixes/47

drop trailing commas in enums
Merge pull request #10 from pah/fixes/57

GenericValue: fixup construction from NumberType
Merge pull request #11 from pah/fixes/70

GenericValue: explicit constructors
Merge pull request #12 from pah/fixes/72

GenericDocument: forward allocator to GenericReader
Merge pull request #13 from pah/fixes/107

GenericDocument::ParseStream: make SourceEncoding optional
Merge pull request #14 from pah/fixes/misc

some minor fixes