Image: make code better understandable

having a method and anotherone named equal with _ in front is not good style.

also make this method public as I'll need it in a later commit
Rewrote useParentImage implementation

now it's an own component class instead of Basic_Image supporting that.
Incompatible change without update script as that is not easily possible, but validateSettings should bing the required changes up

This fixes regression that caused non-empty forms for Basic_Image with useParentImage.
improve comments
refactor getMediaOutput: move common code into helper