helpers: refactored template_def()
helpers: added template_argspec()
kernel: added argspec attribute to Module and Snippet
cluda/functions: more structured approach for sincos (now it is a function, not a snippet)

Fixes #7.
doc/history: added feature
cluda/functions: fixed norm() behaviour for non-complex arguments
test/cluda: added more tests for cluda.functions and separated them into their own module