More careful handling of optional return types
Return an optional string from serialize()
Merge branch 'optionals' into swift
Move TokenSerializer protocol to its own file
Move Token.URLSerializer to its own file, with better access control
Merge branch 'serializer' into swift
Move token equality into Token.swift
Move generator and factor equality into Generator.swift
Merge branch 'equatable' into swift
Move generator functions to their own file
Move validateGenerator() to GeneratorFunctions.swift
[minor] Remove unnecessary explicit type
Merge branch 'generator-functions' into swift