New test for scripting engine: DECR_IF_GT.
A few var names fixed in Makefile.

I modified it for error in a previous commit doing search & replace.
Merge branch 'strict.lua' into unstable
Rename ADD_*FLAGS -> REDIS_*FLAGS, REDIS_*FLAGS -> FINAL_*FLAGS

This reflects that REDIS_*FLAGS will only be used for compilation of
Redis and not for its dependencies. Similarly, that FINAL_*FLAGS are
composed of other variables and holds the options that are finally
passed to the compiler and linker.
The lcov target shouldn't clean

This is not needed because every change in compiler/linker flags
triggers a cleanup.
Ignore gcov/lcov artifacts
Question mark assignment is not needed
First set defaults, then do composition
Remove unused LIBS variable
Don't set flags recursively
Persist `make` settings and trigger rebuild if anything changes
Less false positives in maxclients test, hopefully.
lookupKeyByPattern() used by SORT GET/BY rewritten. Fixes issue #460.

lookupKeyByPattern() was implemented with a trick to speedup the lookup
process allocating two fake Redis obejcts on the stack. However now that
we propagate expires to the slave as DEL operations the lookup of the
key may result into a call to expireIfNeeded() having the stack
allocated object as argument, that may in turn use it to create the
protocol to send to the slave. But since this fake obejcts are
inherently read-only this is a problem.

As a side effect of this fix there are no longer size limits in the
pattern to be used with GET/BY option of SORT.

See https://github.com/antirez/redis/issues/460 for bug details.
Added test for SORT corner case: pattern ending with just "->".
Replace unnecessary calls to echo and cat

Tcl's exec can send data to stdout itself, no need to call cat/echo for
that usually.
Two small fixes to maxclients handling.

1) Don't accept maxclients set to < 0
2) Allow maxclients < 1024, it is useful for testing.
More robust maxclients test.
Marginally cleaner lookupKeyByPattern() implementation.

just fieldobj itself as sentinel of the fact a field object is used or
not, instead of using the filed length, that may be confusing both for
people and for the compiler emitting a warning.
Merge pull request #456 from pietern/unstable-mkopts

Persist Makefile flags (unstable)
Test LINDEX out of range index.