Using array notation to set a file now uses the same logic as add()

When using array notation in the FileCollection to add a file/directory, it is just added to the array, bypassing the logic in the `add` method. This causes problem when adding directories for example. This pull request fixes this by calling the `add` method from the `offsetSet` method.

It could be argued that the `$offset` parameter is ignored here, but looking at the rest of the class, the `files` array uses numeric keys everywhere so I doubt this is an issue.