Feature: Collections

A bit awkward that we already had this, so this branch is mainly refactoring over HYPFormsManager and sharing a bit of the logic between `HYPFormSection`, `HYPFormField`, `HYPFormTarget` and so on.

<hr/>

Add support for collections.

For example if a applicant should add information about many companies, this should be as simple as adding a section like this one to the JSON:

```json
"id": "companies[0]",
"fields": [
    {
       "id": "companies[0].name",
       "title": "Name 1",
       "type": "name"
    },
    {
       "id": "companies[0].phone_number",
       "title": "Phone number 1",
       "type": "number"
    }
]
```

Pre-filling values should be as easy as adding values like this to the initial values when creating a `HYPFormsManager`:

```json
"companies[0].name": "IBM",
"companies[0].phone_number": 3842323,
"companies[1].name": "Facebook",
"companies[1].phone_number": 14140289
```