Working on models for Hangar Extensions.
Asteroid hatch model and animations. WIP.
Converted Unity assets to plain-text format. Stupid: didn't knew about the possibility before.
Moved animations to Animations subfolder.
Finished AsteroidHatch model.
Finished HatchPort and HatchPortAdapter models. They share the main texture.
Finished AsteroidDrill model.
Finished AsteroidGateway model.
Shortened the XL extension.
Added ElectricCharcheID auto-filled property.
Using var wherever possible.
Added Init method.
Added Playing property.
Added ability to loop any animation (config-controlled). Added ability to reverse animation in mid-progress. Fixed several NullRefs.
Using part title instead of internal part name in the part list.
Major rewriting of the core Hangar implementation:

Extensions: Removed ModuleGUIState system; using isEnabled instead.  Added Title to PartExtensions. Added VesselExtensions. Renamed *Extension to *Extensions.

Metric: converted to ValueType; added constructor from volume. Added Clear method.

GenericInflatable: Added ControllableModuleBase class.

Passage: added GetInfo; derive from ControllableModuleBase.

Storage: added Size and Volume properties; GetInfo method; public interface, including new UpdateParams and ClearConstructs methods. Moved Metrics initialization into protected virtual update_metrics to reuse it.

Made Hangar functionality independend from Storage functionality. Moved
core implementation into the abstract HangarMachinery and specific
Hangar module that is combined with Storage in a single part implemented
based on it in Hangar module.

HangarWindow: adapted accordingly; plus, beautified GUI, relocated elements in more logical order.

PartUpdaters: adapted accordingly. Made AttachNode.nodeType to be updated only if the type is a stock one (i.e. sizeN).
Added HangarGateway module: a Hangar that uses only a remote Storage. WIP.
Added HangarStorageDynamic subclass: volume may be added to it through a public interface.
Added SingleUseGrappleNode subclass of the stock ModuleGrappleNode: adds permanent fix ability after the grapple is attached.
Added AsteroidInfo module to be injected by MM into asteroids for their exploitation.