Added some more functions, added a custom IF1 error type, add better warning and error handling