split out server from sieve logic
move parsing plugins into external files