Added operator prototypes and a few implementations