Added new msvenom payload psh-reflection which will use .NET reflection to load payload.
The advantage of this method over existing methods, are that no temporary files will be
created on the target computer.  This can be verified by creating a normal psh payload
and introducing an error into the code after the "addType" call.  The error message will
reference a randomly named .cs file under AppData\Local\Temp\

Introduced a new method called get_unique_random and replaced all calls to Rex::Text.rand_text_alpha
with it.  This new method will ensure that there are no collisions betweeb two randomly created variable names.

Performed minor clean-up on the psh payload.