code: public Image getImage (final String path) {
      final ImageImpl image = createImage(true, 0, 0, path);
      exec.invokeAsync(new Runnable() {
        public void run () {
          try {
            image.succeed(load(path));
          } catch (Throwable t) {
            image.fail(t);
          }
        }
      });
      return image;
    }
docs: Asynchronously loads and returns an image. The calling thread will not block. The returned
  image will not be immediately usable, will not report valid width and height, and cannot be
  immediately rendered into a canvas or converted into a texture. Use {@link Image#state} to be
  notified when loading succeeds or fails.
  
  @param path the path to the image asset.