added suggestion code and tests for upcoming tab completion feature