Lots of changes

- `js.Function[T, js.Any]` -> `js.Function[T, _]`, so you don't need that stupid `(): js.Any` thing at the end of a lambda
- Collapsed all the telescoped overloads (including constructors) to use the new default argument support instead
- Deleted more `ms`-specific things
- Added more docs where it was missing e.g. for `setInterval`

@sjrd could you take a look at this? I tried it out locally, and the generated javascript seems to do what I want, but I'd like to make sure I'm not doing subtly wrong with this `js.Function[T, _]` or default-argument thing which I've never used before