Add interface for progress callback, closes #9

Also a new demo showcasing the new callback