Re-implement architecture detection

Drop support for Rubies before 1.8.6 and use RbConfig::CONFIG['target']
for reliable architecture detection.

Add support for manual target specification.
Use RbConfig::CONFIG['target'] instead of RUBY_PLATFORM
Add support for choosing a compiler via the CXX env variable
Add cross-compilation instructions