switch from marmalade to melpa, add major programming modes