Implementing basic cam updating system - not sure if I like it atm