#8 adding APP.Layer construct