added licence and few more prototypes to the header