Support IBM System z s390 cpu

In IBM System z S390 archtecture,  the /proc/cpuinfo has totally different format with the x86 format. 
It looks like this:

# cat /proc/cpuinfo
vendor_id       : IBM/S390
<# processors    : 2
bogomips per cpu: 9328.00
features	: esan3 zarch stfle msa ldisp eimm dfp etf3eh highgprs 
processor 0: version = FF,  identification = 06E276,  machine = 2818
processor 1: version = FF,  identification = 06E276,  machine = 2818

So, we need to add additional code to make this s390 cpuinfo be resolved.
why is this at a higher level in the data hierarchy? If everything else puts vendor_id somewhere else, some recipes would have to check cpuinfo["vendor_id"] || cpu_info[n]["vendor_id"], which seems unnecessary.

Is it just because you don't have a value for current_cpu yet when you parse this line?