Fixed for New Elixir Version

* Fixed @spec formatting that has changed
* Changed list_to_binary to list_to_bitstring, not sure if that is correct
* Also added simple @id function

Depends on my forked version of genx for now as version string is forced to semantic versioning. You can revert back to his repo once it is updated if needed.