Add ** as an operator

My only problem is I can't get the order of operation correct and my Yecc knowledge is exhausted:

```iex
iex> 2 * 2 ** 3
64.0 # should be 16.0
```

**This is post-1.0 if even accepted.**

I would love some help getting this right even if it's not merged.
The reason precedence is not working is because `**` is being treated as a `two_op` and reaching the parser as a `two_op` instead of `exp_op`.