Add parser for real numbers which accepts more inputs

New parsers accept numbers which have leading or trailing dot. For example: 

```
"1."   == 1.0 - trailing dot
".23"  == 0.23 - leading dot
"-0.3" == -0.3
```

Such numbers appear in the wild so it makes sense to have parsers for them.