issue #212: added auto-increment support for collections

the feature can be used by creating a collection with the extra `keyOptions`
attribute as follows:

    db._create("mycollection", { keyOptions: { type: "autoincrement", offset: 1, increment: 10, allowUserKeys: true } });

The `type` attribute will make sure the keys will be auto-generated if no `_key` attribute is specified for a document.
The `allowUserKeys` attribute determines whether users might still supply own `_key` values with documents or if this
is considered an error.
The `increment` value determines the actual increment value, whereas the `offset` value can be used to seed to value
sequence with a specific starting value. This will be useful later in a multi-master setup, when multiple servers can use
different auto-increment seed values and thus generate non-conflicting auto-increment values.

The default values currently are:

- `allowUserKeys`: `true`
- `offset`: `0`
- `increment`: `1`

The only other available key generator type currently is `traditional`. The `traditional` key generator
will auto-generate keys in a fashion as ArangoDB always did (some increasing integer value, with a more or less unpredictable
increment value).

Note that for the `traditional` key generator there is no the option to disallow user-supplied keys and give the
server the sole responsibility for key generation.