Support for ignoring fields in a struct

Hi again, 

I hit a snag when I was trying to override the default name of a struct's xml element. 

```go
type Person struct {
    XMLName xml.Name `sql:"-" xml:"person" json:"-"`
	Id hood.Id `xml:"id,attr" json:"id"`
	FirstName string `validate:"presence" xml:"name>first" json:"first_name"`
	LastName hood.VarChar `sql:"size(128),notnull" xml:"name>last" json:"last_name"`
	Updated time.Time `xml:"dateUpdated" json:"date_updated"`
}
```

Previously the existence of the XMLName field would cause a panic: invalid sql type.

Seeing as the only purpose of the XMLName field is to override behaviour specific to xml un/marshalling, I added a flag to the sql tag (based on the convention used in the json tag) allowing hood to ignore the field.

feedback is appreciated, this is my first go at go.