setting initial value to empty string after memory allocation of a new array element
got rid of redundant memory allocation methods in init and expand