Fix #1417 (airlocks and emags)

Added a busy check so emagged airlocks can't be crowbarred apart a bajillion times during the ```do_after()```.
Also fixed emag behavior (now properly forces the airlock open).
Also fixed a ```null.len``` runtime related to access on the electronics.
Fixes #1417 (airlocks breaking when emagged)

This is a band-aid fix.
Door-related code is terrible and needs refactoring.