Fix/remove usage of `which`

There's no need to spawn another process just to check if a
binary exists and is on PATH.  Furthermore, `which` isn't
nearly as portable as you'd think.  We'll use `type <bin>`
instead :)

Also, we'll output errors to STDERR, which is something I
should have addressed in #1.