This reverts commit 9b7193f8. This is an older branch that was committed by mistake and does not include addressed review comments, an updated version will come next.