Merge pull request #59 from huevy/master

[test] memory saving in update operations
Updated `dict` use in Quick Examples section
Merge pull request #61 from beckyconning/patch-2

Updated `dict` use in Quick Examples section
$push -> $concat, $unshift -> $prepend
handle `path` as string
removed `options.update`
function names for better stack traces
reimplementation built-in updates

fix #31
v0.3.0

- added `Struct.extend(props, [name])`, fix #55
- added built-in immutable updates, fix #31

**BREAKING**

- change `dict(B)` combinator to `dict(A, B)` where A is the set of
keys, fix #54
- removed `util.isKind`
- removed `util.isType`, use `Type.is` instead
- refactoring of `func`. Now is a proper type combinator. fix #42
- removed `options.update`
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
removed old code
added test for Struct.extend
v0.3.1

- Make `Struct.extend` accept array of extensions
fix version