Initial commit of scala translation - partial