cleanup julia_init options

this attempts to be more consistent and centralized about initializing julia paths (build_path, image_file, julia_home). this is in an attempt to make embedding julia easier. also, it should help with spawning child processes (by providing more reliable access to the parameters, without dependence of the working directory)

1. moves all configuration options into jl_compileropts
2. computes the abspath/realpath of file paths in the config to avoid issues with chdir causing files to end up in the wrong location

@tkelman @ihnorton @staticfloat
This should probably be `#if (defined(_CPU_X86_64_) || defined(_CPU_X86_)) && !defined(_MSC_VER)` since inline assembly doesn't appear to be supported in MSVC for 64 bit

Also note the appveyor failure with mingw64, I'll see if I can reproduce that locally when I get a chance.