Added basic argument checking to Sin function.
Constructors now initialize in correct order.
Virtual destructors added were needed.
Basic makefile added.