Adding some interfaces
Adding ImageFile model
Updating models
Updating views
Encapsulation