Test for issue #69
Fix #69 with care to prevent regression of #45

This is slightly messy, since it proved necessary to record both the
positions of the position of hooks as interpreted before (i.e. the
beginning of the keyword defining the hook type) and the position of
the "beginning" of hooks (i.e. the position of the opening "{#") in
order to make sure that the column positions of generated Haskell code
correspond to the real "beginnings" of hooks.