What Dave said, for emulation especially you want a Pi3 for the extra ram/cores/clock speed.
EmulationStation (The frontend RetroPi uses) does OK with any controller with at least 4 buttons and a D-pad, but the libretro emulators seem to do a better with a few more buttons (IIRC mapping "exit" on an SNES layout controller is awkward), xbox-style gamepads are good general-purpose controllers, and even the real USB ones are pretty cheap.
I've got a couple of this
http://www.banggood.com/SNES-USB-Famicom-Colored-Super-Nintendo-Controller-for-PCMAC-p-923100.html particular super cheap USB SNES-like controllers which feel ok, but have slightly short cables. The "Retolink" offerings or knockoffs thereof offerings tend to be pretty solid for USB controllers that resemble specific consoles.