Reworked files implementation and added file 'tags'.