Support for external image loading

Needs cleanup, but works
Pacify tslint