Congress passes defense spending bill after months of delays