Fix svg element size

fixes #2506, closes #2517

This PR is to fix `svg` element size in Firefox. 
Both with `offsetWidth` and `getBoundingClientRect` FF returns error/wrong result.

I also followed @arian 's suggestion and propose now `.getBoundingClientRect()` as default for `.getSize()`. Was forced to add a exception for IE8- which [cannot calculate](http://jsfiddle.net/R4s8K/) `.getBoundingClientRect()` of elements with `visibility: hidden;`

Added also a spec to cover `svg` element dimensions.

P.S.: When FF bug is fixed and we only support "modern" browsers this `.getSize()` method should be revisited and cleaned up.
why not just... 

```js
return parseFloat(...);
```

worksforme:
```
parseFloat('0px')
0
parseFloat('0.1px')
0.1
parseFloat('0.1px 0.1px')
0.1
parseFloat('10px 1px'.match(/([0-9.?]{1,})/))
10
parseFloat('0px')
0
parseFloat('5px')
5
parseFloat('500px')
500
parseFloat('500.0px')
500
parseFloat('-1.0px')
-1
parseFloat('-0.2px')
-0.2
```

If you agree, you can just drop this function and inline the `parseFloat`.