Fixes and improvements to airlock painters.

-Airlock painters can now be used on finished airlocks to change their paintjob. Keep away from the Clown.
-Airlock painter description up to standards. It still shows the current ink level.
-Fixed a bug with painting airlock assemblies where painted glass airlocks deconstructed to assemblies reconstructed to airlocks would lose their glass status.
-Airlock painters now make a sound (effects/spray2.ogg) when used to paint an airlock.

Second commit:
-You can now remove the toner cardridge from an airlock painter by clicking on the painter in your hand.
-You can now install a toner cardridge into an airlock painter by clicking on it with the toner.

Third commit:
-Removed an unnecessary typecast and duplicate function call from the code.

Fourth commit:  
-Fixed being able to open the paintjob selection window and just walking away to paint the airlock from a distance.
-Fixed a few runtimes that could occur if the toner cardridge were removed while the paintjob selection window is still open.
-If you remove the toner cardridge from the airlock painter, it will now try to be put in your hand before falling to the ground.
I forgot to mention these in the commit itself:
-The heat_proof of an airlock will now be properly set when repainting.
-You can now repaint mineral airlock assemblies.

Fifth commit:
 -The airlock painter now shows a message when initially used on an airlock and out of ink/toner cardridge.
-Codewise the functionality of airlock_painter/use() has been divided between two procs. Use() still works the same, but can_use() only checks if the painter can be used, without draining ink or playing sounds if that's true.