Revert "Revert "Initial work""

This reverts commit 6cbcd17edb4493481011469379426b1ccd7ae6f5.