Enhance handling of attributes

Improve printing of attributes as follows:

- If attributes are on the same line, they are printed sequentially
inside a pair of '[<' and '>]'.
- If attributes are on different line, they are separated by a new line.

This is not fully contextual, but it should avoid too long lines by
multiple attributes.

One-liner attributes are still used in order to ensure that the code is
compileable no matter where these attributes are placed.

Related to
https://github.com/fsprojects/VisualFSharpPowerTools/issues/353