Developing base component
Added many test, very basic functionallity