added NDArray and basic functionalty