Fixed sepBy1 to not require a trailing separator

sepBy(letter, char(',')).parseOnly("a,b,c") should result in Done(, List(a, b, c)) not Done(c, List(a, b)).

The ok(Nil) needs to be inside the cons() and part of the s ~> scan parser.  That's the way the Haskell attoparsec sepBy1 is implemented.