Adding 'survivalOutcome', allow non-survival outcomes to be in [0, 1] instead of [0, 1) and some other stuff

This pull request includes all of the changes I made over the summer, including the things we emailed about.  That's almost everything needed for the paper, other than possibly automatically transforming Y if it's outside [0,1]. I also added a few tests.

In addition to those things, I changed changed messages printed with 'cat' and 'print' to be displayed with message() and warning(), so that they can be handled correctly for example with the suppressWarnings() function.

When I merged your recent changes into my repo, there were some conflicts mostly in the function taking args nodes$A, nodes$C, nodes$L, nodes$Y that were changed just to take nodes. I had also added the 'survivalOutcome' option, so they could not be merged automatically.  I THINK I merged them correctly and tests pass, but if something goes wrong, that's a likely culprit.