Merge pull request #117 from john-vinters/master

Add support for ILIKE/LIKE pattern matching.
Add nested preloads

Closes #83.
Improve Ecto docs and nest TypeCheckError
Trim the README
Improve docs and specs in FromBuilder
Ecto.InvalidQuery -> Ecto.QueryError
Simplify check_merge to avoid creating a new query
Move FromExpr work to compile time and avoid binds check at runtime

We have removed check_binds because we can check all binds are
available in the validator in a more performatic way. We kept
the check binds for now only for `from` queries, to give fast
feedback on froms, but it may also be removed in the future.
Move SelectBuilder to new apply_query format
Remove bindings from limit, offset and preload
Move limit and offset to new builder style
Move OrderByBuilder and WhereBuilder to new format
Refactor group_by, join and order_by to use escape_dot/2
Document and refactor remaining BuilderUtil functions
Move having, group_by and preload to new format
Simplify keyword query to rely on their existing parts
Normalize preloader still at compilation time
Move joins to new expression format
Only escape queries automatically
Add join_builder_test