draw: alias the standard library's image/draw's exported types.

This relies on type aliases, a language feature new in Go 1.9.

The package documentation, in draw.go, explicitly gives the intent of
this package:

    This package is a superset of and a drop-in replacement for the
    image/draw package in the standard library.

Drop-in replacement means that I can replace all of my "image/draw"
imports with "golang.org/x/image/draw", to access additional features in
this package, and no further changes are required. That's mostly true,
but not completely true unless we use type aliases.

Without type aliases, users might need to import both "image/draw" and
"golang.org/x/image/draw" in order to convert from two conceptually
equivalent but different (from the compiler's point of view) types, such
as from one draw.Op type to another draw.Op type, to satisfy some other
interface or function signature.

Change-Id: Ice6d000d49b019c2d8761739a904232e9cd01cae
Reviewed-on: https://go-review.googlesource.com/36730
Run-TryBot: Nigel Tao <nigeltao@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rob Pike <r@golang.org>
Reviewed-by: Russ Cox <rsc@golang.org>
3 files changed