Use composer manage the dependency
fixup
fixup
fixup
use include
use reflection
allow to create a new one
should always include
add tests
fixup
fix coverage
todo
fixup
travis