new data-structur for recommodations and lots of minor bug fixing