Add get index and update types

Simple workaround to make the example code work with Julia 0.2.

This also adds in a getindex(s::Cat, n::Int) which allows for direct access to a lazyseq, eg:

```julia
fibs[5] #=> 21
```


I would like to add more tests to this library as I figure out exactly how to do that.