Add support for checkpoints in unit tests

xc8 unit tests can now specify certain checkpoints that must be
passed for the test to succeed.  A checkpoint is simply a call to the
checkpoint or checkpointl macros.  Checkpoints are listed in the header
of the testcase using Checkpoint:symbol1,symbol2=value