Fix regression around await of non-class type

E.g. type param, abstract type.

The test case in the PR:

```scala
def combine[A](a1: A, a2: A): A = a1

def combineAsync[A](a1: Future[A], a2: Future[A]) = async {
  combine(await(a1), await(a2))
}
```

fails with the following exception:

```
[error] /Users/gnovark/git/async/src/test/scala/scala/async/run/toughtype/ToughType.scala:313: exception during macro expansion: 
[error] scala.ScalaReflectionException: type A is not a class
[error] 	at scala.reflect.api.Symbols$SymbolApi$class.asClass(Symbols.scala:272)
[error] 	at scala.reflect.internal.Symbols$SymbolContextApiImpl.asClass(Symbols.scala:82)
[error] 	at scala.async.internal.TransformUtils$class.mkZero(TransformUtils.scala:334)
[error] 	at scala.async.internal.AsyncMacro$$anon$1.mkZero(AsyncMacro.scala:6)
```