initial scala version lots to do