Making use of delayed unlink in gates, too
Using common temporary vector to reduce mem allocation overhead
Adding copyright headers