Make Cartfile optional if Cartfile.private exists

Fixes #254 
Let's avoid `!` in tests, so the test runner doesn't crash. This could be `result.value()?.dependencies ?? []` instead or something.