Blast door refactor

Refactors blast door code completely to eliminate massive amount of ugly copypaste code. It is now possible to easily add more types of blast doors, without having to use ton of copypaste.

Fixes #7343 
Maybe you could use the existing door repair code, and just add a var to determine what type of stack is used?