Legacy interface

I brought legacy-interface up to speed with master. Let's bring these changes in (because they're good) and we can keep on thinking about compatibility separately :)

Edit: Or should I have merged legacy-interface into golint? I'm not sure the right etiquette!