Switch all uses of SeekableStreamFactory -> IGVSeekableStreamFactory
Implement IGVSeekableBufferedStream
Partial rollback of commit 699df0bc8c690fde7073752d148dd7759f100baf
 (Modify bigwig and bigbed readers so they open and close streams as needed, instead of leaving them open. add tests).
Add dispose() method to Track and DataSource.  Purpose is to release any resources (e.g. file handles) allocated exclusively to respective object.   Method is called upon track removal and application shutdown.  Implemented for BigWigDataSource to close file.