update to 2.3.4

changed some variable array definitions to pointer structures because VS
does not like unknown sized arrays