Building Secure Systems from Buggy Code with Information Flow Control