make AbstractFile mapped and add the mixin

I don't know why this class even worked without the MappedSuperclass, guess only because annotations are seen on the extending class.

adding the mixin to avoid issues like #337