Added section detection

Unclosed sections now raise an error
Removed unnecessary custome exception

The custome exception EOF was not needed,
there is a built-in one called EOFError.
Added a move function

Instead of having all those

```
current += x
```

you can now call move like so

```
move(x)
```

which is a little cleaner