Fix NPE in Partial.with()

Also ensure unsupported duration fields are compared properly
Fixes #93