prepare development
refacored tests
inverse service alias and factory