Basic functionality in somewhat working state