Fix bug in cache
Stop adding duplicate fences in waitFor

Fences I added here are also added by the compiler
when --cache-remote is enabled, but they don't do
anything if --cache-remote is not enabled, so they
don't need to be explicitly included here.
Relax task counting fences, add barrier fence

The task counting atomics don't need to imply fences
as these are handled elsewhere and we're really just
updating a counter.

For the barrier here, it's waiting on (not atomic)
local memory to change from a remote locale's put - which
is not legit according to the memory model... add
a fence (but I'd like to see a better barrier).
Fix problems with NetworkAtomics from r23794

r22107 fixed some wrong return types for Atomics.chpl,
and r23435 and r23472 fixed that for NetworkAtomics.chpl,
but my patch r23794 inadverdently undid some of these changes.

Here I put the changes back. Some other notes:
 - I added explicit return types to read and peek methods.
   That seemed to make it fit in better but the corresponding
   change would also need to be done in Atomics.chpl for peek.

 - I did not add :void return types to e.g. add or sub methods,
   but somebody could do that if it's important to match the style
   used in Atomics.chpl

 - I fixed peek and poke for ratomicflag to work with bool instead
   of int(64).

Tested with 'make check'.
Merge remote-tracking branch 'upstream/master' into cache_fixes
Comment fix.
Move fence to top of loop, comment changes.
Responds to Greg's request.
Add an "_enum_first" function to the language.

For each enum type, an _enum_first function is generated, which returns the
first enumeration specified when the type was created.
Basic test case to lock in behavior
Move the code to insert module init functions from the start of scopeResolve to the start of docs.  Remove references to mod->initFn from scopeResolve.cpp
Merge pull request #58 from lydia-duncan/enumFirstFunction

Enum first function
Tweak the verify test for the target of a GOTO.  The test assumed that if the label had been resolved, i.e. scopeResolve had ran, then the branch must be inside some function.  For expressions at top-level this was implicitly the initFn.  Relax the test so that it does not complain if the parent is a module and that module does not yet have an initFn.  This test will be run after each pass and eventually there will be a pass where the initFn is present
Remove the #if 0 around the "suspect" code now that paratest has passed
Merge pull request #63 from noakesmichael/init-fn

Migrate the code to insert module initFn from scopeResolve to docs.  Almost home.

Cleaned up a few references to initFn in scopeResolve and tweak the verify operation for GotoStmt
to handle the case when the initFn has yet to be inserted.

Compiled: clang STD, gnu STD/LLVM
Tested: paratest --verify
Review: Elliot
Comment change
Merge remote-tracking branch 'upstream/master' into cache_fixes
Merge pull request #53 from mppf/cache_fixes

Completed GASNET+fifo oversubscribed testing, merge, make check with and without GASNet. Merging...
Fix sh compatability problem
Merge pull request #65 from mppf/testfix3

Fix sh compatability problem
Merge from master with edits to scopeResolve.cpp.