More measure/record stuff, some manipulation

Still not sure if this *Base pattern makes sense, or if a [+T]/[Any] approach
would be cleaner.
Improve syntax and concision with context bounds