Fix for BasicBSONObject equals method

very large Long values were being converted to doubles for comparison
and incorrectly considered equals