Only build framework schemes

Fixes #124, #143. Tested with the unit test fixture and also the `Cartfile` described in the original issue.

/cc @0xced
I do generally avoid explicit returns when the closure's type can be inferred, but that's more of a correlation between lexical size and my aforementioned rule of thumb.

I think it's confusing that a multi-line block without any `return` statement will sometimes return something and sometimes not, which is why I prefer to distinguish my uses of `return` by single vs. multiple lines.