Rewrite delMut

The previous implementation of 'delMut' was discovered to have stability
issues when used in certain tests, where it would require seemingly
arbitrary amounts of time and memory to complete.

The new implementation is a complete rewrite which among other things
uses 'oneof', 'take' and 'drop' rather than 'elements', 'inits' and
'tails'.

Signed-off-by: Stian Ellingsen    <stian@plaimi.net>
Reviewed-by:   Alexander Berntsen <alexander@plaimi.net>
Signed-off-by: Alexander Berntsen <alexander@plaimi.net>