Sync with ale upstream.

Highlights:

 - code compilation is synchronous (no need to call sync_changes)
 - no poor man's lazy evaluation
 - no check of sink's mailbox length; since currently sinks are
   synchronous there's no real need for this; and besides, this area
   is going change significantly
 - resurrected Makefile and rebar since I want to be able to build
   this outside couchbase-server

Change-Id: I9bd29077ee4af53a16417915f8fb06e9dc38e95d
Reviewed-on: http://review.couchbase.org/36801
Tested-by: Aliaksey Artamonau <aliaksiej.artamonau@gmail.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>