Allow configurable versions for Windows packaging

Certain gem developers are now limiting the versions of Ruby they
target when generating binaries.

This change introduce two configurable variables: BASE_VERSION and
RUBY_CC_VERSION

BASE_VERSION is used to indicate the native version of Ruby that
will be used to base for cross-compilation.

RUBY_CC_VERSION provides a list of target versions for cross-
compilation.

Due some limitations between Ruby 1.8.x and Ruby 1.9+, you cannot
use for base version 1.9.3 and target 1.8.x.

The following are examples of usage for cross-compilation:

  $ BASE_VERSION=1.9.3 bin/package_win32_fat_binary mygem RUBY_CC_VERSION=1.9.3:2.0.0

Above example will use Ruby 1.9.3 to cross-compile a fat-binary
that includes Ruby 1.9.3 (1.9) and 2.0.0 (2.0) binaries.

  $ BASE_VERSION=2.0.0 bin/package_win32_fat_binary mygem RUBY_CC_VERSION=2.0.0:2.1.3

This last example will use Ruby 2.0 and only cross-compile
Ruby 2.0.0 (2.0) and 2.1.3 (2.1) inside the gem.
Be specific about base version to be used

Toa void issues with `1.8.7-head` (that is triggered by RVM), we
should be locking the version used for base to match the one
installed.
Ensure same 1.8.7 version is used when cross-compile

Use the same version of Ruby 1.8.7 across the board to avoid RVM
telling us the version is not installed.

I'm actually not sure why rvm will say that `1.8.7-head` is not
installed, compared when using 1.9.3 or 2.0.0 it always install
the latest available patchlevel.

:confused:
Merge pull request #12 from luislavena/configurable-xpackage

Allow configurable versions for Windows packaging