only delete links; delete existing destination before creating links

Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
no late delete

Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
add gpl header

Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>