Fix make clean from subdirectories.

When the CLEAN variable is defined, it means that `make clean' was run
from a subdirectory. Only the files related to that directory should be
removed, so the wildcard is no good.
Remove backup target.

There are several git-builtin ways to achieve a backup, and they're much
better since you can actually document what you're doing.
Correct license in several files.
Clean up C code slightly.
Remove comment about s362ani + attenuation.

This has been fixed by @hejunzhu in #124.
Remove some commented and unused code.
Use real(..,kind=CUSTOM_REAL) for type conversion.

There are several cases of:

    if (CUSTOM_REAL == SIZE_REAL) then
    ! do stuff
    result = sngl(...)
    else
    ! do stuff
    result = ...
    endif

which causes type conversion warnings for the latter half. It is much
simpler to use the kind argument to the real() intrinsic. This fixes the
warning and means that the code doesn't need to be written twice.
Use MPI_STATUS_IGNORE in MPI calls.

The status is not used, so this saves us an extra variable or two. As
suggested by @jedbrown in another PR for Specfem2D.
Remove explicitly imported but unused module vars.
Fix real-to-integer conversion warnings.
Make SAC type conversion explicit.

SAC uses 4-byte floats in its binary format.
Remove unused constants.
Fix spelling of some constants.
Combine duplicate get_global subroutines.

These are all the same save for one loop bound. But that nested loop can
be re-written as a single loop that works for all cases.
Combine duplicates of sort_array_coordinates.

This unfortunately causes a bit of extra allocation for unused
parameters. Hopefully I can find a workaraound for that.
Replace Numerical Routines sorting code.

Numerical Routines source code is not re-distributable in any way at all
and is 100% incompatible with the GPL.

The replacement code originates from the heap_sort.f90 in the mesher
code. It appears to be a fairly straight-forward translation of the heap
sort algorithm (e.g., from RosettaCode) and should be unencumbered. I
have added additional parameters in order to sort multiple arrays at the
same time. Interestingly, this code is slightly faster than the
previous version.
Remove get_value_string subroutine.

All it does is copy the default value to the result.
Normalize case of some Fortran keywords.

There are a couple of files with code I'd rather not touch right now.
Remove err_occurred function and commented code.

All the parameter reading subroutines report errors through an argument,
so this function does nothing. The variable it returns is never assigned
the errors anyway.
Remove unnecessary string trimming.

These strings are trimmed when extracted from the Par_file, so there's
no need to do it again. What's worse in this case is the string is
trimmed in a loop over all receivers.