Add all required specs and fixed a few issues

Reviewed-by: Jonathan Provost <jprovost.sh@gmail.com>