One thing I've got to agree with the OP on is the team switching. The NBA in particular has taken a huge hit in integrity. The days of guys like MJ who stuck with the same team almost their whole career are gone.
The NBA works likes this: when stars come into the league they usually start on bad (relatively) small market teams like Lebron in Cleveland, Dwight Howard with Orlando, Deron Williams with Utah, Chris Paul to New Orleans, Carmelo in New York, Amare Stoudemire in Phoenix. They play until their contract is up then everyone flocks to New York/LA/Miami.
The last few years have been a pathetic arms race of stars flocking to NY/Brooklyn, LA Clippers and LA Lakers and Miami. Watching Lebron win a championship didn't even feel redeeming or accomplishing. He took the easy way out.
Have some pride, if you think you're so great carry YOUR team to a championship. Expecting others to carry you to a champship is the exact opposite of a champ. Lebron is and never will be MJ.