Module#ancestors now includes singletons themselves

Hello,

Since Ruby 2.1, calling #ancestors on a singleton class should now include the class itself in the chain.

Since BasicObject is at the very base of the ancestors, we also need to change the meta class of Object so that BasicObject's singleton class correctly get included in the chain.

This patch has been written by @bbrowning!

Have a nice day!