use stricter sqlite3 locking to make sqlfs reliable under load

use sqlite3 'exclusive' locking on all transactions.  This was always
enabled for libfuse mode, where it worked well.  Since we were having
problems in standalone mode, this change seems to have fixed them.

Future work: figure out how to use better locking for more concurrency
use sqlcipher header in sqlfs_internal.h also
make Android version of show_msg() so it sends to logcat
replace fprintf with show_msg everywhere so all messages can be redirected
fix issues with generating the string for new paths when renaming dirs

* char[] is like a char* so no need for & as in &new_path
* ensure that the last strncat does not overrun its buffer
fix all "pointer targets in assignment differ in signedness" warnings

sqlite3_column_text() returns a const unsigned char* to be extra careful
when supporting all platforms, since char is not guaranteed to be unsigned
but we only care about sane platforms where char is unsigned, so just cast
to const char*
comment out all xattr stubs, we don't use xattrs nor need to implement them
in get_value(), init size to 0 in case the database is busy

This also gets rid of this warning:
sqlfs.c:1482:32: error: 'size' may be used uninitialized in this function
fix compiler warnings in the tests
turn on all warnings and make all but 'uninitialized' errors

sqlfs_proc_access() has uninitialized warnings for three variables, and its
not easy to see how to avoid that.  What should the default uid, gid, or
fmode be?
don't forget to leave room for the terminating null byte
fix autotools warning about fsx_CFLAGS and AM_PROG_CC_C_O
simple write performance test
use 8k sqlfs block size and 8k sqlcipher page size
make crypto version of the performance test as part of the default tests
added speed tests for reads
Merge remote-tracking branch 'guardian/master'

Conflicts:
	sqlfs.c
	tests/Makefile.am
	tests/c_perf.c
improve stability with multiple threads under load