Ignore .cmt and .cmti files for completion
Indent the block when the opener is hanging (except for "(")

This ensures the following indentation:

type t = [
  | `A
  | `B
  ]

As desired, it is the same as

type t =
  [ `A
  | `B ]
Indent type declarations by the same amount let-bindings are

The following indentations are used:

type t =
  int Map.t

type t =
  A
  | B

For the second case, it would be better to have A aligned with B but
it is a good practice to put a `|' in front of each line anyway so
that is not so bad.