Added class and demo project