can add skip full carrages and raises an error if they're all full
Minor refactoring, also wanted to point out that it should have been 'their' in the last commit