Chain multiple encoders in msfconsole

As discussed https://github.com/rapid7/metasploit-framework/pull/3770#issuecomment-55819559 

Here is a new try to allow multiple encoding.

From msfconsole using set Encoder or set StageEncoder, it is possible to set multiple encoders with this syntax :
<encoder>:<iteration>, <encoder2>:<iteration>
This should not break compatibility.

Example :
```
msf exploit(psexec) > set Encoder x86/shikata_ga_nai:2, x86/fnstenv_mov, x86/shikata_ga_nai
```

should print in log :
```
[10/06/2014 15:46:03] [i(0)] core: windows/meterpreter/reverse_tcp: iteration 1: Successfully encoded with encoder x86/shikata_ga_nai (size is 320)
[10/06/2014 15:46:03] [i(0)] core: windows/meterpreter/reverse_tcp: iteration 2: Successfully encoded with encoder x86/shikata_ga_nai (size is 347)
[10/06/2014 15:46:03] [i(0)] core: windows/meterpreter/reverse_tcp: iteration 1: Successfully encoded with encoder x86/fnstenv_mov (size is 370)
[10/06/2014 15:46:03] [i(0)] core: windows/meterpreter/reverse_tcp: iteration 1: Successfully encoded with encoder x86/shikata_ga_nai (size is 397)
```