PHP-1273: Fix bson_encode() handling of MongoTimestamp objects

Previously, MongoTimestamp objects were serialized as BSON dates, which also lead to property access errors.

Additionally, this changes the code to use a static buffer, which is consistent with other fixed-size types (e.g. dates, integers).
PHP-1277: bson_encode() should return empty string for min/max keys

MongoMinKey and MongoMaxKey do not have values and are only differentiated by the type byte in a document (like null values).
PHP-1272: Implement missing tests for bson_encode()