Made Image class way more modular and object oriented

Could not test it really yet because unit tests are really almost impossible without proper dependency injection...
Do we even need `$this->path`? Couldn't just use `$this->fileObj->path`?