Indent parenthesized constructs properly

Things that span multiple lines in parentheses are not indented enough. The formatting can lead to unexpected output like:

foo =
  ( [ 1
  , 2
  , 3
  , 4
  ]
  )

It should format like:

foo =
  ( [ 1
    , 2
    , 3
    , 4
    ]
  )
Edited by Hardy Jones