Importing arraymancer seems to interfere with backward indexing in system.nim
I noticed a strange issue with backwards indexing on regular `seq`s when importing Arraymancer:

```nimrod
# example works fine when commenting out the import
import arraymancer

type
  MySeq[T] = ref object
    data: seq[T]

proc test[T](s: MySeq[T]) =
  echo s.data[^1] # error here

let s = MySeq[int](data: @[1, 2, 3])
s.test()
```

The error is `lib/system.nim(3536, 3) Error: for a 'var' type a variable needs to be passed`, which indicates that Nim is calling the "wrong" overleaded version of `[]` because there is an implementation without `var`. I don't understand yet why it would try to call the version with `var` when importing Arraymancer. Maybe it is rather a more general issue in Nim?
