Refactor curve/circle; add sphere, rect prism.

Add:
	src/matrix.c
		-add functioning addBox() and addSphere(), to render rectangular prisms
		and spheres.

	src/(graphics.c, matrix.c)
		-move drawBezier(), drawHermite(), and drawPolygon() from
		graphics.c to matrix.c, and rename from draw...() to add...(),
		as they're meant to add points to a matrix instead of simply drawing
		them to the screen.

	src/interpreter/interpreter.c
		-modify function calls as per the move/name change of functions in
		graphics.c and matrix.c.
Add torus; fix addSphere(), multiplyMatrices().

Add:
	src/matrix.c
		-rename addBox() to addRectangularPrism(), out of personal preference.
		-add addTorus()/generateTorus(), to generate tori.

Fix:
	src/matrix.c
		-multiplyMatrices() is intended primarily for the chained multiplication
		of transformation matrices into a points matrix, so the original
		function's multiplication of every argument Matrix_t into the subsequent
		Matrix_t was undesirable, as single transformation matrices that may
		have been intended for re-use were modified (every preceding matrix was
		multiplied into any given argument). Fix by storing all Matrix_ts
		preceding the last one (the transformations) in a temporary buffer, and
		then multiplying them into the last argument (the points).
		-addSphere() broke on creating spheres not centered on the origin, due
		to the fact that circles were being generated about the given center and
		then rotated -- fix by generating all circles about the origin,
		rotating, then translating the complete sphere to its center.
Add 3d-shape commands to interpreter.

Add:
	src/interpreter/interpreter.c
		-add commands to add a rectangular prism, sphere, and torus to the
		current points matrix.
		-add command to clear the current points matrix.

	doc/interpreter.txt
		-add documentation for new interpreter commands.

	scripts/3d.gsc
		-add script to test functionality of 3D shape (rectangular prism,
		sphere, and torus)functions.
Fix CLEAR_POINTS; add terminal conditional.

Add:
	makefile
		-add conditional to execute the engine in a gnome-terminal only when no
		SCRIPT_FILE argument is given, which is the only case that the shell
		will be activated.

	src/matrix.c
		-deallocate the sphere and torus matrices that addSphere() and
		addTorus() received from generateSphere() and generateTorus().

Fix:
	src/interpreter/interpreter.c
		-fix CLEAR_POINTS_CMD, which changed the value of the argument points
		Matrix_t pointer by setting it equal to a new matrix -- the change
		wouldn't be preserved because the pointer was itself an argument. Fix by
		passing in a pointer to the pointer.