Made defun+ etc pass through declarations.

Also added test for it.