Added Take and Skip and cleaned up a bit