Split length parser out to its own thing, now SILE.length.new can use it.
Rewrite to be more objecty.
Use the new length parser from the parser bits collection.
Warning function for internal bugs.
Support multiple types per setting.
Various test fixes.