Seek sets the offset for the next
write() to offset,
interpreted according to
Start means relative to the
start of the file,
Current means relative to the current offset,
End means relative to the end. Seek resolves to the new offset
relative to the start of the file.
Seeking to an offset before the start of the file is an error. Seeking to any positive offset is legal, but the behavior of subsequent I/O operations on the underlying object is implementation-dependent. It returns the number of cursor position.