code: function( aSource, aCallback, aOptImage )
      {
          var out = aOptImage || new Image();
  
          var loadHandler = function( e )
          {
              // clean up listener
              handler.dispose();
  
              if ( typeof aCallback === "function" )
              {
                  aCallback( out );    // invoke callback
              }
          };
  
          var handler = new EventHandler();
          handler.addEventListener( out, "load", loadHandler );
  
          // load the image
          out.src = aSource;
  
          return out;
      }
docs: @public
  
  @param {string}    aSource either base64 encoded bitmap data or (web)path
  to an image file
  @param {!Function=} aCallback callback handler to execute when Image has
  finished loading and its contents are ready, the loaded
  HTMLImageElement will be returned as its argument
  @param {Image=}    aOptImage optional HTMLImageElement in case we'd like to
  add a listener to an existing DOM element
  
  @return {Image} return Image with attached load handler