Add an Exception sub-namespace

(Original exceptions only) Allows code using the library to autoload
exceptions as they would expect to be able t
Remove AbstractException::factory

Removed AbstractException::factory - serves no useful purpose and hinder
IDE hinting