scanner: switch to using dataclasses
This drops one dependency that we're not fully using anyway. Except for the per-attribute validators that can be done in __post_init() we're not using attrs for anything that dataclasses cannot do.
Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.
This drops one dependency that we're not fully using anyway. Except for the per-attribute validators that can be done in __post_init() we're not using attrs for anything that dataclasses cannot do.