Add macros to create Trys

These are just toy macros, but the fastAttempt in particular could make Injections a bit faster that are defined using it (rather than Inversion.attempt).
inv is basically a lazy parameter that is inlined (same idea as fastTry).

```scala
val maybeNum = "12"
fastAttempt(maybeNum)(maybeNum.toInt)
```
I *assume* that if we put just the function, it will inline the function object and then call the apply on it. To do otherwise, I *assume* will take a Tree that we need to walk.