Group::setAttr: Don't create unlimited datasets

Since we cannot extend attribute datasets there is no need to
set the maximum dimensions to unlimited
Introduce PSize as an abstraction for simple array size info

Making use of this in Charon and Group will make function
exception safe.