fixed several bugs in libxdifile + completed perl wrapper

This rather large PR includes the following:

 * Changes to `xdifile.c` and `xdifile.h`
    * return the correct error code for `baddata/bad_06.xdi`
    * correct error message for `ERR_NONNUMERIC`
    * added `DATALINE regex` to `xdifile.h` and use it to correctly identify the problem with `baddata/bad_11.xdi`
    * preserve text after colon in user comments, which need to be preserved verbatim
    * the reader was dropping the last point in the data table

 * Changes to `xdireader.c` to facilitate wrapper development
    * report on warnings (i.e. positive valued error codes)
    * report last 2 points of data table
    * report error code number

 * Perl wrapper is now (I think) fully functional with extensive unit tests

I am going to update the latex version of the spec in a later PR