Passing in User Data to server create command
Interestingly enough, you have to pass userdata to new instance in a specific format. It has to start with <powershell> and end with </powershell>
..but then in gets more interesting.
You have to pass in your custom script in the Base64 format.
Converting your file to Base64
$string64 = gc .\aws-userdata.ps1 -Encoding byte
$string64_string = [System.Convert]::ToBase64String($string64)
Creating node with user data
New-EC2Instance -ImageId ami-monkey -MinCount 1 -MaxCount 1 -keyname monkey -InstanceType m1.medium -Verbose -UserData $string64_string