Make Cartfile optional if Cartfile.private exists

Fixes #254 
Can this logic go into `fromFile`?