Engine: Better portrait character X positioning

The engine will now check to see whether the portrait needs to be on the
left or right when in "Sierra-style portrait location:
BasedOnCharacterPosition" mode even if the character speaking is the
same. This fixes situations where a player might speak to a character,
then move around to the opposite side of that character and speak to
that character again.
Merge branch 'portrait_location' of https://github.com/gurok/ags into portrait_location