Resolves #761.

ssl passes 46/168 tests. 108 fail due to inability to start a socket and another 14 failing with attribute errors due to missing library functions.

### Checklists

- [x] Add a [CHANGELOG](https://github.com/pyodide/pyodide/blob/main/docs/project/changelog.md) entry
- [x] Add / update tests

Add cryptography, openssl, and _ssl packages. Resolves #761.

ssl passes 46/168 tests. 108 fail due to inability to start a socket and another 14 failing with attribute errors due to missing library functions.

### Checklists

- [x] Add a [CHANGELOG](https://github.com/pyodide/pyodide/blob/main/docs/project/changelog.md) entry
- [x] Add / update tests

This is to limit the SIMD optimization level when compiling numpy due to emscripten's restriction on porting SIMD instructions: https://emscripten.org/docs/porting/simd.html#compiling-simd-code-targeting-x86-sse-instruction-set. Without this patch, we will get an error saying some intrinsic types can't be found.

diff --git a/numpy/distutils/command/build.py b/numpy/distutils/command/build.py
index a4fda537d..a1c4bfdb1 100644
--- a/numpy/distutils/command/build.py
+++ b/numpy/distutils/command/build.py
@@ -35,8 +35,8 @@ def initialize_options(self):
         old_build.initialize_options(self)
         self.fcompiler = None
         self.warn_error = False
-        self.cpu_baseline = "min"
-        self.cpu_dispatch = "max -xop -fma4" # drop AMD legacy features by default
+        self.cpu_baseline = "min"
+        self.cpu_dispatch = "min" # drop AMD legacy features by default
         self.disable_optimization = False
         """
         the '_simd' module is a very large. Adding more dispatched features

This is to limit the SIMD optimization level when compiling numpy due to emscripten's restriction on porting SIMD instructions: https://emscripten.org/docs/porting/simd.html#compiling-simd-code-targeting-x86-sse-instruction-set. Without this patch, we will get an error saying some intrinsic types can't be found.

diff --git a/numpy/distutils/command/build.py b/numpy/distutils/command/build.py
index a4fda537d..a1c4bfdb1 100644
--- a/numpy/distutils/command/build.py
+++ b/numpy/distutils/command/build.py
@@ -35,8 +35,8 @@ def initialize_options(self):
         old_build.initialize_options(self)
         self.fcompiler = None
         self.warn_error = False
-        self.cpu_baseline = "min"
-        self.cpu_dispatch = "max -xop -fma4" # drop AMD legacy features by default
+        self.cpu_baseline = "min"
+        self.cpu_dispatch = "min" # drop AMD legacy features by default
         self.disable_optimization = False
         """
         the '_simd' module is a very large. Adding more dispatched features
