Add failing test for first column matches

word_column finds too many words when initial word is in the first
column. Right now, it often selects the whole file. Add failing test to
demonstrate this bad behavior.

TODO: Start and end of line tests fail.
Fix start of line test: don't select everything

Instead of always accepting first/last column, change the pattern we use
to not require a preceding char (like we're accepting start of line as
the preceding char).

Change end of line to match (this doesn't seem necessary, but it works).

All tests pass.
Use smart boundary cols for 'around'

Sometimes it's useful to expand to the largest word, but to allow the
more exact matching behavior to prevail, only use it for 'around' (ac
and aC).

Update the documentation to reflect the changes in what ac/aC mean.
Add failing test for demonstration from docs

The documentation describes the desired "smart boundaries" behavior. My
new behavior doesn't match.

Test passes if g:textobj_word_column_no_clever_boundary_cols is defined.
Fails otherwise (TODO).
Change test to use 'around' for old behavior

This doesn't quite match the old behavior -- previously 'inner' would
expand to the largest word. But it allows similar usage. I don't think
using 'around word' is particularly useful, so I accept the trade off.

A more compatible change would be to rework my new more exact matching
code to only determine the selected lines and use smart boundaries to
determine the columns.

Removes TODO from doc-example test.