@JSName for methods and @JSEagerLoading

Make @JSName work for methods, so that we can use a different internal name in scala that maps to another name in js.

Create a new annotation @JSEagerLoading that can be applied to objects to avoid lazy loading when the programmer nows it is safe.