Merge branch 'master' into principled--command-query--exp
Basic sketch of candidate friend query
Working sketch of query that takes user arg
Query takes user in ctor arg
Constructor cherry picks concerns from user
Query object receives primitives in ctor args
Factory method and class convenience method
Bang syntax for query exec
Query ctor replaced with initializer
Removed superfluous ctor implementation
Switched order of query ctor args. User ID has significance. Args should be ordered according to significance.
Cleanup
Composed query from separate methods
Compose with query method, overriding arel's "+" operator to do merge
"query" is aliased as "q"
Query composer is its own module
Query base module (also includes initializer)
Query composition utility
Syntax for query composition is clarified
Superfluous include of Initializer