Added support for a context and a float type in the modules

Context is just so you can store your own data in the module,
this void pointer will be passed to pretty much ever function
afterwards. And with the float type I really just mean that you'll
be able to return a float, this isn't fully implemented just yet tho.

Signed-off-by: Toon Schoenmakers <nighteyes1993@gmail.com>