added timeout to http connection, split object-specific parts from core, added an example function