Allow static files in Collections

Allow StaticFiles in Collections alongside Documents. Attempts to fix #2555, #2598. Can also be modified a bit to accommodate #2592. Builds on #2603.

Please test!
Sure! Which lines should I split into separate methods?
Also, I don't really get what you mean by using `attr_reader`; do you want me to use a `path` attribute like the other content types do?