This is how I would counter each of his pokemon:
Magneton-a sweeper, a fire pokemon works well, a ground type works even better.
Sneasel-An ice type. A fire pokemon can take it own with ease (Figthing has a 4X effect on it)
Haunter-Most of the time, he'll use curse, so a dark move will kill it without it being a threat, and just switch out to avoid damage.
kadabra-A dark type will take him out, or any physical move if you can hit him before reflect could get set up, which most in game alakazams carry.
golbat- an ice or psychic type can deal with this guy rather quickly. A thunderbolt would be excellent
Starter-Meganium can be countered with the fire type you used to beat sneasel and magneton. Feraligatr can be dealt with using thunderpunch, thunderbolt, solarbeam, etc. Typhlosion goes down to earthquake, stone edge or surf.