cleanup, better exception handling, add partial WebM support, add a curl based streaming object