As for college, there are two theories on that: on one hand, a college degree from a good school still caries a lot of weight with people, and it's a great networking tool. You'll meet some great people as well, and you might even learn something (though at your presumed skill level, you probably won't learn much of value until your junior/senior level CompSci classes. More valuable might be hitting CompEngineering or Electrical Engineering instead.
There's another theory which says 'skip college, do a startup', and there's lots of good reasons to take that route as well. It'll be less fun, more work, but possibly more lucrative, and you'll have much more 'working world' experience when you're done than your college friends.
As for 'what should you learn?' My MO for that is 'when in doubt, go deeper in the stack'. Those who truly understand the entire architecture of computers, and know how to drive the maximum performance out of it will always be in demand.
Also, work on the people skills. Learning to be a better communicator and how to connect with people will never be wasted. Negotiation is a skill to work on as well.