Basic, vaguely useable solver classes...