introduce LIBJ_FUNCTION_TEMPLATE
add Error::REJECTED_EXECUTION
add 'virtual'
introduce ExecutorService
use ConcurrentLinkedQueue