Much better number handling…

Always use a double if the string contains a '.' or a 'e'.

Otherwise use stroll to scan the string into a long long if we have less than 19 digits

If we have more use a NSDecimalNumber but try and convert to a 64-bit NSNumber if we can.

Added more unit tests and snowflake sample json (from https://dev.twitter.com/docs/twitter-ids-json-and-snowflake)
WIP