added network layer classes. refactored ui components