Fixed up json provider, updated request system