Make super work with contracts (fixes issue #27). Also, make private methods work with ruby 1.9"