Build libhashpipestatus libtool library

The libhashpipestatus library contains funtions related to the shared
memory status buffer.  Encapsulating status buffer access functions in a
shared library provides external programs (e.g. scripting languages) a
convenient way to access the status buffer and abstracts away all of the
underlying semaphore and shared memory details.
Add a staging target to perform a local install.

This allows staging an install directly in the build tree.  It allows
one to run "make staging" instead of the equivalent-but-unwieldy
"make install DESTDIR=`pwd`/staging prefix=".
Add #include "guppi_defines.h" to guppi_databuf.h

guppi_databuf.h test whether the NEW_GBT macro is defined, but it did
not include guppi_defines.h, which is where it is typically defined (if
at all).
Clean up files included by guppi_status.h

guppi_status.h used to include "guppi_params.h", but that includes way
more stuff than is really needed.  All that is needed is the NAME_MAX
macro from <limits.h>.
Make guppi_find_end static in guppi_status.c
Link programs with libhashpipestatus library
Rename guppi_status.{h,c} to hashpipe_status.{h,c}

Also changed all references in the source code and Makefile.am so that
everything still builds cleanly.  Changing all occurrences of
"guppi_status.h" to "hashpipe_status.h" was accomplished en masse by
doing:

ruby -api -e "gsub('guppi_status.h','hashpipe_status.h')" \
  `git grep -l guppi_status\\.h`

(I'm not sure that the "-a" option is actually needed since we don't care
about autosplitting lines.)
Stage into $(abs_builddir)/staging
Remove $(abs_builddir)/staging during "make clean"
Ensure install of hashpipe_status.h
Add hget.c and hput.c to libhashpipestatus

Also make sure that fitshead.h gets installed.
Link libhashpipestatus with -lm
Add guppi_status_exists()

As its name suggests, this function can be used to test for the
existence of a status buffer for a given instance_id.
Always compute keys in guppi_{databuf,status}_key

The computed keys used to be stored in a static variable inside these
functions using lazy initialization.  This means that they will always
return the key of the first instance_id requested regardless of the
value of the instance_id parameter on subsequent calls.  This means that
a single process would only be able to compute a single key for each
buffer type.  This is bad!

Computing the key each time fixes this problem.
guppi_status_semname uses caller supplied buffer

guppi_status_semname used to store the computed name in a static char
array (internal to the function).  This created thread safety issues.
The problem was further compounded by the fact that the static char
array was lazily initialized, meaning that
only the first semaphore name computed by
guppi_status_semname would be used for the entire process regardless of
subsequent calls with different instance IDs.

This fixes both issues by changing guppi_status_semname to store the
computed semaphore name in a caller supplied buffer.
Add xeng_init.sh

Not fully functional/tested yet.
Add paper_init.sh's directory to PATH

This is so paper_xgpu can be found on the path, which assumes that
paper_init.sh and paper_xgpu will be installed in the same directory.
Change domain name in paper_init.sh

Was roach.pvt, now it is paper.pvt.
Uniquely name paper_xgpu stdout and stderr files

paper_gpu's stdout now goes to "px${mypx}.out.${instance}".
paper_gpu's stderr now goes to "px${mypx}.err.${instance}".

This prevents filename collision when CWD is mounted over the network.
Install paper_init.sh and xeng_init.sh

"make install" now includes paper_init.sh and xeng_init.sh.