check whether an content type is available to add

This pull request adds a new method to content types to specify whether it is currently possible to create a new content of a specific content type.
Currently, it is only used for the file content type. As long as no files are uploaded, the content type wouldn't be listed in the content type list.