Simplify 'Resolve' type class.

The state type 'st' is redundant because the state can be conveyed
through an appropriate choice of monad 'm'. For generality, only require
that 'm' be an 'Applicative'. This is particularly important for the
next patch, because 'Applicative' is closed under composition while
'Monad' is not.
Add instances allowing to compose and resolve label union types.

Can now resolve not just @Static l a@, but also @Static (Either l1 l2)
a@ if @l2@ and @l2@ both resolvable.