Refactor

Hey Jeremy!

I took the liberty to reorganize the code a bit according to the conventional Elixir style.

I couldn't get the PLT to build on Elixir master, so I set the maximum version to 0.14.2.