general cleanup
add development mode as a separate module