Change how _id is checked for typing

`Meta.add_to_original()` always includes `_id` in the `typed_fields`
option. The only time it's not there is when using `ModelFactory` in the
tests. By updating `ModelFactory` to follow this same behavior, the
`_id` key can be accessed directly without the need to use `get()`.
Clean up

I'm switching from `self` to `cls` to be consistent with the rest of
`Model._update()`.
Use PyMongo sorting values

Rather than hardcoding 1 and -1 for sorting, using `ASCENDING` and
`DESCENDING` from PyMongo will allow the code to function the same
should MongoDB ever change the values used for sorting.