Merge branch 'release/0.4.0' into develop
update version for further development
added interface abstractions for serveral builder methods
Setting version to 0.5.0 for release
Merge branch 'release/0.5.0'