Fixing negative times

This address #105. There were two separate issues: one easy and one a little deeper. 

1. In plotting, I assumed the min time was 0, this has been fixed.
2. I changed some logic in the core `survival_times_to_table` function that makes it more robust. 

I've added tests for both fixes. @spacecowboy for review please :)
For the event table, we need everyone who dies to first be born. If no `birth_times` is given, we infer when everyone is born. 1) If durations are all positive, then everyone is born at 0. 2) If duration can be negative (your case), then everyone is born at the earliest time.