Add support for bigint and double fields
This will become handy. Thanks!

Currently you can only define IntegerField, FloatField and DecimalField.

What happens if you need to store a long (bigint)?
You have to use a Decimal without decimal places?
A new **LongField** (or BigIntField) should be added (**bigint, 8 bytes**).

Also, sometimes float is not enough.
For coherence, **DoubleField** should also be added (**double precision, 8 bytes**).

I believe both cases are extremely frequent.
