bugfix of `drop` (also fixes `skip`)

The implementation of `drop` was plain wrong, provoking this kind of
problem:

```ocaml
\# let s = Stream.of_list [ 1 ; 2 ; 3 ];;
val s : int Stream.t = <abstr>
\# Stream.next s;;
- : int option = Some 1
\# Stream.next s;;
- : int option = Some 2
\# Stream.drop s 1;;
- : unit = ()
\# Stream.next s;;
- : int option = Some 3
```
Merge pull request #3 from pveber/drop_fix3

bugfix of `drop` (also fixes `skip`)