bump elixir version
use new comprehensions
replace records with structs