DataSet::guessChunking: throw InvalidRank for empty NDSize

Currently we just threw "1". Includes a test.
Merge pull request #298 from gicmo/guessChunkException

DataSet::guessChunking: throw InvalidRank for empty NDSize