Remove isFunction check. It's slow and it's being called for each element on each update loop.

It's ok to have it throw an exception if the user sets ._update to a string or something else weird.
Trailing whitespace
One of the few cases where optimizing a for loop is actually worth it.

For a deeply nested svg this will be called *a lot*.
Also see http://jsperf.com/jquery-each-vs-underscore-each-vs-for-loops/4
Remove unnecessary update call to parent.

The global update works top to bottom and calling parents update functions inside this loop increases the update calls exponentially. In any case getBoundingClientRect itself calls update if needed, so this is safe to remove
Replace three more _.each calls.
Declare some vars locally. Sharing them doesn't add any performance, potentially uses more memory (they are not garbage collected after the function has run) and makes the code more difficult to understand.

It also gets rid of a lot of JSHint warnings.
One more _.each removed
Revert "Remove unnecessary update call to parent."

For now. There has to be a better way than indiscriminately calling update that much.
Merge pull request #83 from DieBuche/performance

Two small performance improvements