Using biblatex 3.3 and biber 2.4 (currently in development folders on Sourceforge), you can customise the sorting keys used to sort names and you can do this at various scopes. One way of tackling your problem is:
\begin{filecontents}{\jobname.bib}
@BOOK{test1,
OPTIONS = {sortnamekeyscheme=givenfirst},
AUTHOR = {Arnar Vigfusson},
TITLE = {One},
DATE = {1983}
}
@BOOK{test2,
OPTIONS = {sortnamekeyscheme=givenfirst},
AUTHOR = {Sigridur Benediktsdottir},
TITLE = {Two},
DATE = {1983}
}
@BOOK{test3,
AUTHOR = {Brian Yellow},
TITLE = {Three},
DATE = {1983}
}
\end{filecontents}
\documentclass{article}
\usepackage{fontspec}
\usepackage[style=authoryear]{biblatex}
\addbibresource{\jobname.bib}
\DeclareSortingNamekeyScheme[givenfirst]{
\keypart{
\namepart{given}
}
\keypart{
\namepart{family}
}
}
\begin{document}
\textcite{test1,test2,test3}
\printbibliography
\end{document}

Here you can see that the new command \DeclareSortingNameScheme is used to define a new named scheme for constructing name sorting keys. This can be referred to at several scopes - globally (default), as part of a reference context, as a per-entry option (as in this example) or, with BibLaTeXML data sources, you can even do this at per name-list or per-name scope so that you can mix Icelandic and non-Icelandic names in the same entry:
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bltxml}
<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="test7.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<!-- Auto-generated by Biber::Output::biblatexml -->
<bltx:entries xmlns:bltx="http://biblatex-biber.sourceforge.net/biblatexml">
<bltx:entry id="test1" entrytype="book">
<bltx:names type="author">
<bltx:name sortnamekeyscheme="givenfirst">
<bltx:namepart type="family" initial="V">Vigfusson</bltx:namepart>
<bltx:namepart type="given" initial="A">Arnar</bltx:namepart>
</bltx:name>
</bltx:names>
<bltx:title>One</bltx:title>
<bltx:date>1983</bltx:date>
</bltx:entry>
<bltx:entry id="test2" entrytype="book">
<bltx:names type="author" sortnamekeyscheme="givenfirst">
<bltx:name>
<bltx:namepart type="family" initial="B">Benediktsdottir</bltx:namepart>
<bltx:namepart type="given" initial="S">Sigridur</bltx:namepart>
</bltx:name>
</bltx:names>
<bltx:title>Two</bltx:title>
<bltx:date>1983</bltx:date>
</bltx:entry>
<bltx:entry id="test3" entrytype="book">
<bltx:names type="author">
<bltx:name>
<bltx:namepart type="family" initial="Y">Yellow</bltx:namepart>
<bltx:namepart type="given" initial="B">Brian</bltx:namepart>
</bltx:name>
</bltx:names>
<bltx:title>Three</bltx:title>
<bltx:date>1983</bltx:date>
</bltx:entry>
</bltx:entries>
\end{filecontents*}
\usepackage{fontspec}
\usepackage[style=authoryear]{biblatex}
\addbibresource[datatype=biblatexml]{\jobname.bltxml}
\DeclareSortingNamekeyScheme[givenfirst]{
\keypart{
\namepart{given}
}
\keypart{
\namepart{family}
}
}
\DeclareNameFormat{author}{%
\nameparts{#1}%
\ifsortnamekeyscheme{givenfirst}
{\ifgiveninits
{\usebibmacro{name:given-family}
{\namepartfamily}
{\namepartgiveni}
{\namepartprefix}
{\namepartsuffix}}
{\usebibmacro{name:given-family}
{\namepartfamily}
{\namepartgiven}
{\namepartprefix}
{\namepartsuffix}}}
{\ifgiveninits
{\usebibmacro{name:family-given}
{\namepartfamily}
{\namepartgiveni}
{\namepartprefix}
{\namepartsuffix}}
{\usebibmacro{name:family-given}
{\namepartfamily}
{\namepartgiven}
{\namepartprefix}
{\namepartsuffix}}}%
\usebibmacro{name:andothers}}
\begin{document}
\textcite{test1,test2,test3}
\printbibliography
\end{document}

There is a new test \ifsortnamekeyscheme which you can use to detect which scheme was used for a particular name. You can insert literals (like spaces, commas) into the name key scheme and also have compound name parts etc. I am looking into implementing more generic name handling for things like patronymics etc.
The name parts system in biblatex 3.3/biber 2.4 has been significantly changed and it is now possible, using a modern datasource like biblatexml, to define and use arbitrary name parts like "patronymic" etc. See the DEV branch biblatex PDF documentation for a complete example.
"{Arnar Vigfusson}"and"{Sigridur Benediktsdottir}"would get sorted under "A" and "S", respectively. – Mico Jan 15 '16 at 05:05biblatexwill be able to deal with Icelandic customs a bit better, see for example this git commit. I'm not sure though, if this feature can be enabled on a per-entry basis. – moewe Jan 15 '16 at 08:04