What are the differences when referring to variables in MSBuild. For example in the following there is a @ and $ and as well as a % used.
<Copy SourceFiles="@(Files)" DestinationFolder="$(TempBuildDir)\%(RecursiveDir)">
<Output TaskParameter="CopiedFiles" ItemName="DeployFiles" />
</Copy>