Initial commit of main scala files