added resolver mechanism
refactor packages