WIPTensorLibrary   "WIPTensor" 
A Tensor or 3 dimensional array structure and interface.
---
Note: im just highjacking the name to use it as a 3d array on a project..
there is no optimization attempts or tensor specific functionality within.
 to_string(this) 
  Convert `Tensor` to a string format.
  Parameters:
     this : Tensor data.
  Returns: string.
 to_vector(this) 
  Convert `Tensor` to a one dimension array.
  Parameters:
     this : Tensor data.
  Returns: New array with flattened `Tensor` data.
 new(x, y, z, initial_value) 
  Create a new `Tensor` with provided shape.
  Parameters:
     x : Dimension `X` size.
     y : Dimension `Y` size.
     z : Dimension `Z` size.
     initial_value : Value to fill the `Tensor`.
  Returns: New `Tensor`.
 new(shape, initial_value) 
  Create a new `Tensor` with provided shape.
  Parameters:
     shape : Shape of dimensions size.
     initial_value : Value to fill the `Tensor`.
  Returns: New `Tensor`.
 from(expression, sepx, sepy, sepz) 
  Create a `Tensor` from provided array and shape.
  Parameters:
     expression 
     sepx 
     sepy 
     sepz 
  Returns: New `Tensor`.
 from(vector, x, y, z) 
  Create a `Tensor` from provided array and shape.
  Parameters:
     vector : Data with flattened dimensions.
     x 
     y 
     z 
  Returns: New `Tensor`.
 from(vector, shape) 
  Parameters:
     vector 
     shape 
 get(this, x, y, z) 
  Get the value at position.
  Parameters:
     this : `Tensor` data.
     x 
     y 
     z 
  Returns: Value at position.
 get(this, position) 
  Parameters:
     this 
     position 
 set(this, x, y, z, value) 
  Set the value at position.
  Parameters:
     this : `Tensor` data.
     x 
     y 
     z 
     value : New Value.
 set(this, position, value) 
  Parameters:
     this 
     position 
     value 
 Vector 
  Helper type for 3d structure.
  Fields:
     v : Vector of the 3rd dimension.
 Tensor 
  A Tensor is a three dimensional array were the 3rd dimension accounts for time.
  Fields:
     m : Matrix that holds the vectors.
