How to define an object in another layer?
Layers are properties of the object see this snippet:

import bpy

# create layers vector with only one layer enabled
def layers(l):
    all = [False]*20
    all[l]=True
    return all

o = bpy.data.objects["Cube"]
# set object to layer 2 only (layers from 0..19)
o.layers = layers(2)

# lookup scene by name 
scene = bpy.data.scenes["Scene2"]
# link object to scene
scene.objects.link(o)