Implement filtration on backend side

* add possibility to filter, sort and limit data(see [here](http://developer.myob.com/api/accountright/api-overview/retrieving-data))
* add convenient `find` method to find by `UID`
* cleanup code(always use old style hash syntax for consistency, remove `{}` when hash passed as last arg)
The reason why i use so basic approach is lack of time and that fact that [ruby_odata gem](https://github.com/visoft/ruby_odata) also use same logic.
But i agree with you that it's too complicated and not very attractive.
So what we can do is
* get rid of strings keys(`'$filter'`) and use symbol keys instead
* add support for hash params, like you mentioned above(`filter: { name: 'name' }`), but also leave support for string params(in case you want to use full odata filter syntax - it's quite advance i would say - see [here](http://www.odata.org/documentation/odata-version-3-0/odata-version-3-0-core-protocol#thefiltersystemqueryoption))

If we want to add `#filter`, `#top`, `#sort`, `#skip` methods i think it makes sense to implement it in separate PR, because they should be chainable(smth like `client.employee.all.filter(name: 'name').sort('name')`), and this implementation require more efforts