Clean up the code and add experimental CoffeeScript draft