Transform simple patterns to remove spurious match commands

Fix #30
Adjust locations of attributes on recursive let bindings

Fix #31