! Introduce Fulfillable applicative, largely refactor