Merge pull request #8 from rrthomas/master

Several fixes and enhancements
Merge pull request #9 from rrthomas/master

Overhaul and update documentation for 0.5.2
Merge pull request #10 from rrthomas/master

More doc fixes
Merge pull request #11 from rrthomas/master

Various tidying and simplification patches
Merge pull request #12 from rrthomas/master

Code simplification
Merge pull request #13 from rrthomas/master

Very small changes
configure.ac: support automake-1.12

Automake-1.12 requires AM_PROG_AR when building in conjunction with
Libtool, but AM_PROG_AR is a new macro for this release.
* configure.ac (AM_PROG_AR): If it's defined, call it.
configure.ac: find and use ffi/ffi.h

If ffi.h is not found along the compiler default include search
path, then also look in ffi/ffi.h, as used by Mac OS X Lion, at
least.
* configure.ac: Only fail when both ffi.h and ffi/ffi.h can't
be found.
* src/alien/core.c: Use ffi.h from location discovered by
configure.
ffi: check discovered libffi provides newest API used by alien.

* configure.ac (ffi): Check for ffi_closure_alloc entry point, so
that older installed libffi's from before that call was available
are not accepted.
bootstrap: no need to call all the autotools manually

* bootstrap, build-aux/extract-trace, build-aux/options-parser:
Scripts to probe configure.ac and Makefile.am files and dynamically
work out what autotools need to be called.
* bootstrap.conf: Alien-specific configuration for bootstrap.
alien.lua: on darwin modules have file extension .so too.

* src/alien.lua (load_library_helper): Return the error message
on faliure rather than abort.
(load_library.linux): Adjust.
(load_library.darwin): If .dylib load fails, also try with .so
before aborting.
core.c: Now that DARWIN is not defined, predicate on __APPLE__

* src/alien/core.c (DARWIN): Change from this...
(__APPLE__): ...to this.
rockspec: don't clobber environment flags.

* rockspec/alien-0.5.2-1.rockspec (build): It's more hygienic to
put configure flags *after* the configure invocation.
Also, append to any existing CPPFLAGS passed in the build
environment.
configury: convert to non-recursive build for speed and simplicity

Generating a single top-level Makefile is faster (no need to fork
sub-makes) and more hygienic (a single make process knows *all* the
project file dependencies):
* configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects option.
(AC_CONFIG_FILES): Remove all Makefiles, except top-level.
* Makefile.am (SUBDIRS): Remove.
Use include to get contents of subdir Makefile.ams, and set
automake variables centrally.
* build-aux/Makefile.am: New file.
* doc/Makefile.am, samples/Makefile.am, src/Makefile.am,
src/alien/Makefile.am: Convert paths and Automake variables to be
relative to top_srcdir.
configury: no need for config.lt or early libtool generation.

* configure.ac (LT_OUTPUT): No need to recalculate the contents
of objdir and shrext_cmds with an early libtool script... LT_INIT
already runs in the same namespace as the rest of configure, so
they are defined already!
Merge pull request #15 from gvvaughan/pull-request/configury

Pull request/configury
Merge pull request #17 from gvvaughan/pull-request/darwin-support

alien.lua: on darwin modules have file extension .so too.
fix conflicts
Merge pull request #19 from gvvaughan/pull-request/rockspec-hygiene

rockspec: don't clobber environment flags.
configury: correct mismerged conflict resolution in Makefile.ams

* src/alien/Makefile.am: Remove duplicates.
(EXTRA_DIST): Always apprnd for non-recursive builds.
* tests/Makefile.am (check-local): Adjust to run correctly from
$top_builddir.