addition of airport lib and spec
some refactoring