temporary commit
initial prototype
improvements and bugfixes