refactaring
add factory
add container
add annotation
bugfixed
Remove old source
change namespace
chnage namespace
add spec
add travis config