who played james in harry potter?