Added Prototypes and removed the name value. The name is now the first argument in the interface