separate server startup from init; add server kill method

This change separates ADB server startup from initialization, so it's possible to import ADB without starting the ADB server. It also adds a kill() method for killing the ADB server.

I didn't make any changes to the behavior of the addon itself, only the ADB API. The only change in main.js is that it now calls ADB.start() after importing adb.jsm so that its behavior remains the same.

(I'm using this functionality to lazily start ADB in the Simulator and kill it when the Simulator addon is unloaded. But I didn't assume that b2gremote would want to behave the same.)