Merge pull request #40 from texuf/master

add ability to index cursor
Add snapshot param to find method in Collection class
Merge pull request #41 from anstef/add_snapshot_param

Add snapshot param to find method in Collection class
Refactor filtering logic
Support for $elemMatch (#39)
Acknowledgement
Implement a rudimentary pull with nested arrays.
Add support for $pull with positional operator.
Missing pymongo import in tests for pymongo.errors.ConnectionFailure usage.
Add $push functionality.
Add positional operator for $inc. Also, fix an issue with multiple edits and positional operators.

The problem was that the document would change after the first edit command.
This would result in the spec not matching on the second edit command and
thus the second edit not succeeding.

So we now store the subdocument in the update method. If the subdocument is
found, we can simply reuse it.
There are cases in which the document can contain an array. Mongo handles it and so should the mock framework.
as_class parameter added to find
added test for as_class parameter
ok, no ordered dictionary in python 2.6
Remove dangerous stub for $where
Fix find_and_modify behavior with remove, new (#49)

* No longer accept remove and new, remove and update
* Propery support remove
Fix README
Fix $push and $pull to handle more cases.
Add more tests cases to test suite for $push, $pull, and $inc.