Make Cartfile optional if Cartfile.private exists

Fixes #254 
Not sure how I feel about this. I think I'd rather lift things to the level of `ColdSignal` as soon as we need complicated transformative behaviors like this (e.g., if you want your error handling to be asynchronous).