server/zeromq: Move context creation in __init__

Do not use global context because it prevent you from running multiple
zeromq servers in multiple threads. Instead, create a context in
__init__ method, or allow passing an existing context with ctx argument.
server/zeromq: Add socket argument

Add socket argument so it is possible to pass an already configured
socket to the server.
server/zeromq: Add ZeroMQThreadPoolServer for async calls

Launch a worker pool in background so this is possible to fire
simultaneous blocking calls to the server.
minor
add failing test for customized type deep in type hierarchy
remove useless "classes" deque

(now that we have topological sorting)
fix overgeneralized array/iterable duplicate prevention
better test name
sanitized resolve_namespace mess
internal type of the field is db related
docstring update
minor
also accept 'inf' and float('inf') as infinity values to max_occurs.
minor
It was made sure that only customizations that need a restriction tag generated one
Merge pull request #364 from plq/master

Refined Xml Schema generation
fix python archive urls
add inheritance test to dicdoc
really fix python urls this time
pass all possible extensions to basename