Make `Struct.extend` accept array of extensions

This is a convenience for chaining `extend` calls, which is a pattern I noticed myself repeating when composing sets of properties into a single struct definition.
Merge pull request #64 from grncdr/patch-1

Make `Struct.extend` variadic