Use of tag use

Deep cloning nodes that should be used before normal document parsing.
Update shadow.class.js

Shadow return null if null is passed.
Makes .setShadow(null) works.
JSCS tweaks. Down to 114 failures.
Update object.js

I'm not sure, i'm sorry i tried to guess.
Update parser.js

Moved in a separate function.
Tried to fix sneaky tabs and spaces.
Update object.js

i need bigger spacebar.
or better i need to stick something on comma key that press even space after it.
Something that can bend down in one direction but not in the other, so when i press comma it push spacebar down, and when i press spacebar i don't fire a comma!
Update object.class.js

as suggested by Kienz.
Update shadow.class.js

At the end was a bad idea. If we call new fabric.Shadow() we should get a shadow whatever we pass as an argument.
Merge pull request #1427 from asturur/shadow-return-null

Update shadow.class.js - `objects.setShadow(null)` removes the sahdow
Closes #1422
Update parser.js

Changed getElementsByTagName with queryselectorall, allow to go just on "use" node , but all of them ( getElementsByTagName doesn't , it select just first level of child.
Removed tagname check now useless.
Merge pull request #1425 from asturur/use-tag-use

Support use tag
Merge pull request #1 from kangax/master

Update to kangax.