Fix for issue #709. Handling arrays of longs while converting from Json.

Fix for issue #709. 

Json ints are always have size of 64 bits. Old array converting (Json -> Bson) was causing memory corruption with long numbers: bson type was always a `Bson.Type.int_` but sometimes was storing a `long` value.

The fix provides behavior that checks minimum required type (`Bson.Type._int` or `Bson.Type._long`) to store homogeneous array of `Json.Type._int`. Overhead exists only for arrays of `Json.Type._int`'s.