Subdivision Surface Issue. Help!

Hey guys, I’m new here.
So I’ve been going through a few modeling tutorials on Blender Cookie and trying to get my feet wet, when I ran into a problem adding a subdivision surface modifier to a cube I was working on.

The course was “Introduction To Character Modeling in Blender” and I’ve gotten stuck on the hat.

Here is the hat before I add the subdivide modifier:

And here is the hat afterwards:

What is causing the model to break? How do I fix it?

can you upload a blend file?

I’d try Edit Mode->Select All->Remove Doubles as a first step.

Thanks guys, I’ve found the problem.

Excellent recommendation JiggyWig, I had no idea that command existed.