Spain faces months of political uncertainty as Socialist Prime Minister Pedro Sanchez prepares to announce snap national elections on Friday.