Johnson is better than an average major league player. Good average, great OBP, and 30 HR power, with a bunch of Runs and RBI in that lineup? I think that's better than average. He's hit around 30 HR's in the minors at AA and AAA the last two years, that's better than just good pop.
Francoeur has been sick... and is becoming more patient, it's easy to see that. But, he's not taking as many walks because he's driving pitchers pitches.
There's no way that I'd keep Upton over either of those when Upton isn't even in the Majors yet. Think of it this way, would you choose Upton higher in the draft over Francoeur or Johnson? Who is going to help your team more? If you're that stuck over Upton, pick him up in the draft in a later round. Johnson or Francoeur are going to help your team a lot more, IMO. Plus, if Upton is moved to 3B, a lot of his value is lost, especially for the next 2 years or so, until he develops more power.
Just my $0.02