added specialized exception for 404, updated pre condition interceptor, added test