func (d *Decoder) Decode(v interface{}) error {
	return d.DecodeElement(v, nil)
}
Decode works like xml.Unmarshal, except it reads the decoder
stream to find the start element.
package xml
import (
	"bytes"
	"encoding"
	"errors"
	"fmt"
	"reflect"
	"strconv"
	"strings"
)
func Unmarshal(data []byte, v interface{}) error {
	return NewDecoder(bytes.NewReader(data)).Decode(v)
}