added some other languages and cleaned up some code