Readme update and query call exceptions

Hi, 

I changed the readme to reflect your change to the static queryBuilder() method.

I also introduced a method called "argumentExists" in the BaseComponent, which - for every query type - checks whether the method called on that query object actually exists.
I.e. if you try to use Term()->min_similarity(0.5), you'll receive an exception:
"Exception: You called "min_similarity()" on Sherlock\components\queries\Term, but that object doesn't accept that call."

I hope you'll like the changes. Good work, keep it on!