Silence a ghc warning about no type signature for top-level binding.
Fix an occasional args-out-of-range error.
Make shm/del support hungry-delete-mode.
Run swing-up when kill-region is called on several empty lines.
Bind 'shm/delete to C-d and <delete> in addition to <deletechar>.
Try to swing up an expression in shm/delete.

When deleting only whitespace from the end of a line, try to swing an
expression up instead of simple deleting whitespace; also try to
delete following empty lines.
Insert newlines in struct type constructors as in lists.

It might not work in general, only on the things I tested it on.