Refactor, separate source and compiled files

Using a top level directory src/ and dist/ to separate the source files and the compiled files

Signed-off-by: Ryan Holder <ryan@ryanholder.com>