Merge pull request #7 from alinadubatovka/master

Gist::insert implementation =^_._^=
New Gist::insert() without Entries' parents. New InnerEntry without parent.

Gist::chooseSubtree(), Gist::split(), Gist::adjustKeys() are deleted and merged into Gist::insert().
PredicateHolder is implemented, it contains the only method getPredicate(). Entry inherits PredicatesHolder. Predicate::pickSplit() works with PredicateHolders.

PredicateHolder is parametrized by Predicate. Problem because of cycling dependencies! :'(