Do we need signed/unsigned data flag?
Not really. The data can be easily changed to signed as default losslessly. Unsigned 8-bit data (where 128 is the median) is easily changed to signed, and changed back if being saved as RIFF/WAV (which only supports unsigned 8-bit).
However, it wouldn't hurt to support it. Applications can be built to support one or multiple formats, thus requesting conversion if not supported by the codec.
Do we need to record int/float data flag?
Some codecs (Vorbis) use floating point samples nativly. Others only support int. Support for int/float data flag is thus important.
Do we need to offer endian data flag?
LSB/MSB can be changed losslessly, one should probobally be settled on for the data and stick with it. It's a fainly low-CPU process to change the endian on the application side in any event, and if the application uses the bitpacker, this isn't even an issue.
Supporting both is possible, too, but adds complexity to a format intended to be simple.