Added options.preserveHandleAttr, closes #13
Don't generate documentFragments if attributes have substitutions, fixes #14
Added options.appendClassNames to (very crudely) append to className instead of overwriting it, closes #15