Add Java package name to nanopb.proto.

This fixes problems when interoperating with Java.

Fix suggested by trepidacious:
https://groups.google.com/forum/#!topic/nanopb/hZgrj6h9OnY
Performance improvement: replace memcpy with loop.

In the pb_istream_from_buffer and pb_ostream_from_buffer, memcpy was
used to transfer values to the buffer. For the common case of
count = 1-10 bytes, a simple loop is faster.
Make pb_decode_varint32 a separate implementation.

This avoids doing 64-bit arithmetic for 32-bit varint decodings.
It does increase the code size somewhat.

Results for ARM Cortex-M3: -10% execution time, +1% code size, -2% ram usage.
Add compile-time option PB_BUFFER_ONLY.

This allows slight optimizations if only memory buffer support
(as opposed to stream callbacks) is wanted. On ARM difference
is -12% execution time, -4% code size when enabled.
Avoid unnecessary looping in required fields check.

Results for ARM: -6% execution time, -1% code size
Improve the pb_decode_varint implementations.

Results for ARM: -4% execution time, +1% code size
Use unsigned datatypes where appropriate.
Fix compiler warning on MSVC (issue #57)
Sanitize filenames before putting them in #ifndef.

Update issue 50
Status: FixedInGit
Add check for sizeof(double) == 8.

Update issue 54
Status: FixedInGit
Fix error message bugs with packed arrays.

Error messages were not propagated correctly with PB_HTYPE_ARRAY.
Error status (boolean return value) was correct.

Update issue 56
Status: FixedInGit
Update changelog
Set version to 0.2.0-dev
Replace pb_type_t enum with #defines.

See issue #57.
Add gitignore.

This is a bit bloated gitignore file. Having binaries
in a separate build directory would be cleaner, but I don't
bother to make that change now.
Publishing nanopb-0.1.9
Setting version to 0.1.9.1-dev
Reformat generated .pb.c files using macros.

This has the following advantages:
1) Easier to modify pb_field_t encoding
2) Simpler generator logic
3) Tidier looking, easier to read .pb.c files

Update issue 58
Status: FixedInGit
Rename PB_HTYPE_ARRAY -> PB_HTYPE_REPEATED.

This is a more logical name in parallel with PB_HTYPE_REQUIRED and PB_HTYPE_OPTIONAL.

Warning: This breaks backwards-compatibility of generated .pb.c files.
You will have to regenerate the files and recompile.
Separate PB_HTYPE to PB_ATYPE and PB_HTYPE.

Also clean up the logic so that it is easier to implement more
allocation types in the future.

Update issue 53
Status: FixedInGit