Fix $push and $pull to handle more cases.
Add more tests cases to test suite for $push, $pull, and $inc.