Add specs for error inside to_hash of keyword args
Improve keyword arguments coercion and fix GC crash
Add extra padding for ByteArray after encoding
Add failing specs for FFI::Library#attach_function accepting an options hash
Rubinius::FFI::Library#attach_function accepts an optional options hash
Rubinius::FFI:Library#attach_function does NOT accept a Pointer as the c_name
Add corner-case spec for ill-state string with no padding ByteArray
Fixed behavior around fork, exec, fork/exec.
Added spec for ENOENT from Kernel#`.
Explicitly set FSAPI dir mode.
Avoid caching singleton classes.

Singleton classes reference the object.
Added more IO.popen specs.
Added CI tags for IO.poen specs.
Some fixes for IO.popen.
Removed debugging.
Don't rely on getlogin() for getting usernames.

In some cases this will, for whatever reason, return NULL. As a result the fsapi
path ends up being NULL terminated. This results in any following data being
ignored by whatever uses the path. This caused the console to use paths such as
"/tmp/rbx-/console-response" instead of
"/tmp/rbx-yorickpeterse-XXX/console-response".
Removed obsolete agent mspec option.
Removed --agent flag from spec runs.
Removed obsolete Rubinius configuration for agent.
Singleton classes can't have subclasses.