Query builder odm

This is a work-in-progress, it certainly does not work, so just ignore the blatant problems for now. Its just to show the direction Im going in.

The next steps will be to implement the ``ExpressionBuilder`` as in ``Doctrine\Commons``.

I have indicated things I am not sure on with @notsure