add composer.json
add base component class