Added PUT method. Just need to tidy up validation and overall response in/out objects + make extensible/flexible