Rewrite token emitting functions

Previously, `elixir-smie-forward-token` and `elixir-smie-backward-token` dispatched to a single larger function called `elixir-smie-next-token` which in turn dispatched to a much larger function called `elixir-smie-next-token-no-lookaround`. 

This patch removes those layers in favor of relying on SMIE's machinery to do most of the heavy lifting. 

Fixes #67 
Fixes #76