* can now create c-arrays from vectors and push vectors to c-arrays
* exported more needed symbols so cepl can be meaningfully used by other libs
- Fix bugs in 2 matrix functions
- Added declarations for some matrix3 funcs. Getting there
- Added means of creating gpu-array from vector
- Added print-matrix
Partially added inference of c-array types.
Inference still doesn't handle structs

gl-index was a fucking mess. And we still have an issue
with multidimensional arrays

> (make-c-array #2A((1 -200) (1.0 3)))

> (gl-pull *)
((1.0 1.0) (-200.0 3.0))
Updated places where make-c-array is used
meh
Fixed up bugs and make-c-array semantics.
And now textures can use the new type stuff
Make-texture takes inital-contents as the first arg and is
mandatory (though obviously you can pass in nil)
Added print-mem to help with cffi debugging
Fixed silly mistakes in memory index logic. Lots of room for
optimization though
Can now print-mem on gpu-arrays :D
print-mem improvements
Merge branch 'make-c-array' of github.com:cbaggers/cepl into origin-make-c-array
forgot to update print-mem of gpuarrays with offsets
* print-mem now works on all autowrap structures and system pointers
* fixed bug in make-array where it wasnt populating the arrays in cases
  where element type was specified
* Better error message for type infer
* Fixed bug in swizzle compiler macros
* made shorthand for swizzle s~
* fixed bug in defpipeline where it wasnt initalizing all the needed
  vars
Merge branch 'make-c-array'
Modularizing according to packages.

Modularizing allows the community to easily handle the code and make
quick changes. It makes the cepl interface clean for external user. It
open up more options for easy management of code.

For example one could replace the maths package with a standard
one (sb-cga) in the future or separate out the maths package as an
entirely independent project.
Adding varjo as a submodule

This brings varjo as a part of the cepl source. The idea here is to
reduce the steps needed to start using cepl.It just makes sense to have
varjo and cepl together in the same project.

However to preserve varjo's status as a independent project we are
bringing it as a git submodule. Once the repository is cloned one has to
simply do a

$ git submodule update --init
Bringing varjo into the cepl system definition

This commit removes the dependency on varjo as an external system and
instead makes it internal to the cepl system.