packages git ignore added
added basic interfaces, infrastructure