added initial application layer lib