Down-integrate from internal code base (C++ maps support).
Compat w/ git < 1.8.
Ignore generated test scaffolding files.
Don't rely on non-standard 'INT32_MAX' / 'INT32_MIN'.

Define safe constants to use when padding enums.

Fixes #80.
Exclude Python build artifacts.
Use 'kint32min'/'kint32max' constants, rather than defining locally.

Incorporates feedback from @xfxyjwf:
https://github.com/google/protobuf/pull/84#discussion_r20474781.
Avoid '**/' patterns for compat w/ git < 1.8.

Ignore generated test scaffolding files.

Exclude Python build artifacts.
Merge pull request #84 from tseaver/fix_80-avoid_INT32_MAX_MIN

Don't rely on non-standard 'INT32_MAX' / 'INT32_MIN'.
Merge pull request #86 from tseaver/compat_w_git_lt_1.8

Make .gitignore more robust
Merge remote-tracking branch 'upstream/master'
Fix 'error: a class-key must be used when declaring a friend' compile error.
Fix testcase compile failure under gcc 4.6:

google/protobuf/map_test.cc:88:16: error: expected ‘;’ at end of member declaration
google/protobuf/map_test.cc:88:18: error: ‘override’ does not name a type
.
Merge pull request #88 from tseaver/fix-class_key_must_be_declared_w_friend

Fix compiler error: "a class-key must be used when declaring a friend"
Ignore files generated from new 'map*.protobuf' sources.
Merge pull request #89 from tseaver/ignore-map_generated_files

Ignore files generated from new 'map*.protobuf' sources.