Feature ioexceptions

Do not catch `IOExceptions` to rethrow them wrapped in a `KamaException`.

Methods now throw both `IOException` and `KamaException`. 

Fixes #9

@Nixweerd @TheN1ckname