Added flush empty row methods and flag

- Added flush empty row methods and flag
- Improved performance by autimatically toggling garbage collection and flushing empty rows.

Closes #6
Replaces [closed issue #16](https://github.com/johnnyfreeman/coseva/pull/16) (different branch)

This will probably be my last pull request for quite some time, as I'm shoving way too much progressive code into the project. My master branch will become a different code base pretty soon, but I will maintain a side branch to be able to keep supporting the original project.

@johnnyfreeman