Fixed "new" macro

Switched it from a memset(malloc(blah),0,blah) to calloc( 1, blah ).  This is safer as the old macro could allow for arbitrary memory writes if malloc failed.