bring etense up-to-date

  -- written Makefile, README
  -- autoconfiguration (which locking method to use)
  -- new configuration ($ETENSE_BANNER)
  -- written some documentation
  -- use pthread_spin_lock instead of kernel's spinlock_t,
     use gcc's builtin cmpxchg rather than something defined
     in the corner of a hidden header file
  -- fixed bugs:
     -- free(NULL) is valid
     -- malloc()-before-init() works
     -- fall back to !MMAP_MAYMOVE code if mremap() fails
  -- adios.h: new macros: GCC_AT_LEAD(), STATIC_ASSERT()
  -- test.pl: made useful