recurrent layer with search and language model initial commit