minor cleanup and reformattnig

This is just a bit of reformatting to make things a bit more readable
and a bit more understandable as to what lives where.
Add the Apache2 license
add a minimal readme to the project
move files to the proper directory

It seems a pretty strong convention in Elixir that namespaces in
modules are reflected in directories.
rename Application to GenX.Application

This follows the standard and public namespace isn't polluted unduly.