add partition-vec to utils

adds a useful function for partitioning vectors into parts suitable for
use in `tesser.core/tesser`. Uses subvec to avoid copying/allocation.
Defaults to the same chunk size clojure.core/reducers does for `fold`

This also lets users avoid the nasty edge case there is in `clojure.core/partition`,
which doesn't play well with `tesser.core/tesser`:

```clojure
(partition 2 [1]) => ()
```