Use consistent syntax for terms

An Amalog term is described as a space-separated list of non-space
characters.  If one wants to place a term inline, he must wrap it in
parens (which act roughly like a newline and indent).

The old code used function notation like: foo(bar baz).  Parsing that
syntax requires special rules.  I don't want to use my complexity budget
just to make the syntax more complex.

The function notation also requires a developer to perform
two types of visual parsing when inspecting the code: prefix and
whitespace-separated.  By using Lisp-stile parens, a developer reading
the code only needs one visual parsing: whitespace-separated.
Replace `|` with `pipe`

I prefer to use words instead of punctuation where possible.  There's
obviously no restrictions on space here so a word seems optimal.
Clarify how `csv` determines its mode

This is not steadfast, so perhaps these two modes need to be split into
separate predicates.  Or maybe a `mode: read` and `mode: write` argument
can be added.

I can focus on those details when it comes time to write Amalog's CSV
library.