Updated gotchas to include better function docs

As I said on HN, with rude words, there are some dangerous assumption in the "functions" section. I tried to keep the target of the document in mind making these changes.

As you'll see I also introduced "function expression" and "function declaration", as they bring different semantics with them.

I hope that you will at least review the changes, this repository is getting a lot of attention, and it shouldn't give misconception to newbies. JS can be a beast, when not correctly tamed it will eat you alive (I say this as the JS advocate in my company).

(I googled for "tamed beast" and "tamed dragon" but only found horrible pictures. So here's [Chuck Norris riding a dragon][1])

[1]: http://newnation.sg/wp-content/uploads/random-pic-internet-04.jpg