Polished up a bit
Added demo