BPackageWriter: Add BPositionIO support
Add private BDataPositionIOWrapper

Implements the BPositionIO interface on top of a BDataIO, requiring the
{Read,Write}At() accesses to be sequential.
ReaderImplBase::Init(): Make file size check optional

If the file doesn't support GetSize(), skip the header total size file
size check.
package recompress: Add stdin/stdout support

stdin doesn't work quite yet. We'll need to convince the BPackageReader
to skip parsing the TOC and package attributes sections.
PackageReaderImpl: Delay reading sections until ParseContent()
BPackageWriter::Recompress(): Change param to BPositionIO*

Besides that this is a nicer interface, it allows us to get a the HPKG
header as a side effect of initializing the reader, thus preventing
seeking backward in the file. This makes "package recompress - <file>"
work.