Implement log rotation, add convenience constructors