Run the search in another thread.

If the user specifies a command with -c, we don't need to wait until it
finishes to look for the next match.
usage: Just use stdout except for the error.
new flag: -x | --execute <cmd>
new flag: -e for --edit.
nullptr and default init.

Since we already compile with -std=c++11...
new options for matching and `match` module.

Learn about --pre, --full, --contains, and --regex.

Switch to c++1y since lambda capture requires it.
Merge branch 'match'

Conflicts:
	main.cpp