fix typo in gproc:add_global_counter/2
fix removal of globals and cleanup after reception of DOWN
pulled from sg2342/41904c1f58a5474ff42c w/minor changes
removed debug printouts
delete of monitor marker in delete_globals() fixed
- fix "this process is monitored" entries for local properties
fixes noted by @jlouis, first eunit suite, bug fixes around mreg
proper restart logic in gproc
added rebar support
added 'doc' target to Makefile
make eqc test less chatty
rebuilt edoc info using edown
rebar doc automatically builds GFM
added words about building docs
rebuilt edown docs
undid mistaken delete of pdf file
re-generated docs with updated edown
Limit the leakiness of a timeout in gproc:await/2.

If we get a value before timeout happens, the timer is still there and
will fire at a later time. This means that the timeout will leak from
gproc into the process which called await/2 and that process might not
be ready to handle the problem.

This fix cancels the timer if the normal message is received. It does
not eliminate the leak though, since the timer might have fired just
before we get to receive the message and thus be in the msg queue of
the process. The cancel will then fail and the timeout will have
leaked. To give a receiver a hint, we have opted to make timeout into
gproc_timeout as an atom() in the hope this will suggest where to
look.
don't call is_process_alive on remote pids (thks sg2342)
Merge branch 'fix-leaking-timeout' of https://github.com/jlouis/gproc into jlouis-fix-leaking-timeout