Added anonymous field *Reference to Branch struct. I think this is probably the best way to handle this type of situation in go.