capacity constraint constructor now throws a useful error message rather...

... than using an assert

this should close #1023