fix a number of bugs in d3.d.ts

Most are a result of setter = `foo.bar(x)`, getter = `foo.bar()` only reflecting the setter signature.

The new definitions are consistent with the [d3 documentation](https://github.com/mbostock/d3/wiki/API-Reference). There are probably more similar bugs, but these are the ones I've encountered.
would prefer function overloading for this instead of inline definition since it allows others to extend. But not really a use case for getter/setter so all good :+1: