Apply machine learning and language processing to create smarter auto complete suggestions when programming