used vector indexing to avoid missing size_t on windows, used unsigned ints for sizes in tests to remove griping