Como testar se um ponto está dentro de um polígono convexo em coordenadas inteiras 2D?

O polígono é fornecido como uma lista de objetos Vector2I (coordenadas inteiras e bidimensionais). Como posso testar se um determinado ponto está dentro? Todas as implementações que encontrei na web falham por algum contra-exemplo trivial. Parece realmente difícil escrever uma implementação correta. A linguagem não importa como eu mesmo a portarei.

questionAnswers(7)

yourAnswerToTheQuestion