Add ability to input existing immutable cursors

In my project I had a use case where I've already created an immutable object, and I want to add it to immstruct later on. This code works for me, and I added a simple test case. Let me know what you guys think.
As @mikaelbr has said, `instanceof ` isn't strong in this case. 

Fortunately, we can use the following methods:

- `Immutable.Seq.isSeq`
- `Immutable.Map.isMap`

Also, I don't think we should discriminate and assume immutable data to be only either `Seq` or `Map`. I think it's better to have a default exported function `immstruct.isImmutable(maybeImmutable)`, then the end-user may decide to change it.