Go to metadata iteration 3

In this PR

* [x] Record field attributes (property/field)
* [x] Generic constraints
* [x] Static constraints (method constraints & module function constraints to implement/test)

Required subtasks for polishing:
* [x] operator member names should be demangled
* [x] back-ticked members identifiers handling
* [x] back-ticked parameters identifiers handling
* [x] special formatting of member constraints for properties
* [x] inline functions
* [x] deactivate provided erased type metadata generation
This formulation is weird.

It is a more cryptic version of these two lines:
```fsharp
let newName = QuoteIdentifierIfNeeded name
if newName = name then DemangleOperatorName name else newName
```